Jenkins+Gitee自动构建部署SpringBoot项目

目录

基本条件

安装Jenkins

插件安装

配置 SSH

构建项目

自动部署


基本条件

一台服务器

 并且安装好JDK

 简单的springboot项目

 并且上传至gitee

 多模块可浏览文章:SpringBoot多模块打包方式

 

安装Jenkins

1、安装

docker pull jenkins/jenkins:lts

 2、创建目录

[root@localhost ~] cd /data/
[root@localhost data] mkdir jenkins_home

3、启动

docker run -di --name=jenkins -p 8080:8080 -v /data/jenkins_home:/var/jenkins_home jenkins/jenkins:lts

启动失败:

# 可能是端口被占用 杀死占用端口即可

# 或者是权限不够
[root@localhost data] chown -R 1000 /data/jenkins_home

4、访问

启动成功后 访问 IP:8080

5、查看密码

6、选择推荐插件

 等待安装。。。。。

安装失败请重试

7、创建初始账号

随便填  这里我填的 admin

8、实例配置

不用动 保存并完成

 

插件安装

1、安装 SSH

搜索——>打勾——>下载

  安装失败重新安装即可!

2、安装 JDK

 全局工具配置

点新增JDK,选择版本,登录下oracle账号:

 务必按照图上所示统一 选择 打勾 点链接登录oracle

3、安装 Maven

最下方找到maven

 

 注意检查以上有没有漏选或者选错

 应用——>保存

 

配置 SSH

 

 添加ssh的ip和端口 , 点击添加

 添加服务器的账号和密码

 检测连接是否成功

  应用——>保存

 

 构建项目

1、新建任务

 2、输入任务名称,选择maven

建议任务名称与springboot项目同名

没有maven则下载maven插件 与上面安装SSH一样

Maven Integration plugin

 3、设置任务的 源码管理

 添加gitee仓库地址

 添加你的gitee账号密码的凭据  并选中

4、设置Maven

 clean package

 

   应用——>保存

5、测试

maven下载依赖速度太慢,我们可以手动关闭构建,把镜像配置为阿里云镜像

修改maven配置

配置文件在你的jenkins数据目录下,例如我的就是:

/data/jenkins_home/tools/hudson.tasks.Maven_MavenInstallation

按照原先方法修改配置文件,把maven远程仓库地址改成阿里云的

不着急就等等

6、查看构建

构建好的jar包目录在:

/data/jenkins_home/workspace/jenkins_test/target

选中查看控制台输出

根据输出就能看到jar的生成目录 

然后我们启动jar包 看看是否正常

cd /data/jenkins_home/workspace/jenkins_test/target
nohup java -jar demo1-0.0.1-SNAPSHOT.jar > /data/demo1/logs.txt &

日志文件logs.txt 需要自己去创建

运行不起来可能是端口被占用了

查看项目端口是否运行

 

 

自动部署

# 查看指定端口
netstat  -nlp|grep 8081

# 强制杀死某个端口,关闭jar包
sudo fuser -k -n tcp 8081

把刚才开启的jar包服务关掉

回到任务的设置

1、构建环境

 按照格式复制上去 路径自行修改

# 刷新配置文件 别改
source /etc/profile

# 杀死项目端口 自行修改成自己的项目端口
sudo fuser -k -n tcp 8081

# 进入项目目录 自行修改
cd /data/jenkins_home/workspace/jenkins_test/target

# 启动项目 自行修改
nohup java -jar demo1-0.0.1-SNAPSHOT.jar > /data/demo1/logs.txt &

2、构建触发器

 身份令牌随意填写

 应用——>保存

 

3、添加用户token

  

生成,保存token信息

 

4、配置Gitee的WebHooks

 

 URL格式如下:

 http://用户名:token@ip:端口/job/jekins_test/build?token=身份验证令牌

用户名:当前jenkins 登录的用户名

token:刚刚随机生成的token

IP:服务器ip

端口:jenkins 端口

身份验证令牌:构建触发器下设置的身份令牌

中间的路径自行去自己那复制 图片已经标注出来了(每个人路径不是一致的)

 

 WebHook 密码/签名密钥:不用填

 填上URL后 直接添加即可

5、完成测试

Gitee请求成功 

 jenkins构建成功

已经自动构建jar包  直接访问

 

 

好了好了 以上便是全部内容

需要资料添加QQ群:821596752

使用 Docker 和 Jenkins 自动部署 Gitee 项目可以按照以下详细步骤进行: ### 1. 安装 Docker 和 Docker Compose 确保服务器上已经安装了 Docker 和 Docker Compose。可以使用以下命令进行安装: ```bash # 安装 Docker curl -fsSL https://get.docker.com -o get-docker.sh sh get-docker.sh # 安装 Docker Compose sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose ``` ### 2. 安装 Jenkins 使用 Docker 安装 Jenkins: ```bash docker run -d -u root -p 8080:8080 -p 50000:50000 -v /var/run/docker.sock:/var/run/docker.sock -v jenkins_home:/var/jenkins_home jenkins/jenkins:lts ``` ### 3. 配置 Jenkins - 访问 `http://服务器IP:8080`,输入初始密码解锁 Jenkins。初始密码可以通过以下命令获取: ```bash docker exec -it <jenkins容器ID> cat /var/jenkins_home/secrets/initialAdminPassword ``` - 安装必要的插件,如 Git、Docker Pipeline 等。 ### 4. 配置 Gitee 仓库 - 在 Gitee 项目中生成 SSH 密钥,并将公钥添加到 Gitee 的 SSH 密钥中。 - 在 Jenkins 中配置 SSH 密钥,用于拉取 Gitee 项目代码。 ### 5. 创建 Jenkins 任务 - 在 Jenkins 中创建一个新的自由风格的软件项目。 - 在“源码管理”中选择 Git,填写 Gitee 项目的 SSH 地址,并选择之前配置的 SSH 密钥。 - 在“构建触发器”中选择“Gitee 触发构建的 WebHook 服务”,并配置 Gitee 的 WebHook。 ### 6. 编写 Dockerfile 在 Gitee 项目根目录下创建一个 Dockerfile,用于构建 Docker 镜像。示例 Dockerfile 如下: ```Dockerfile FROM python:3.9-slim WORKDIR /app COPY . . RUN pip install -r requirements.txt CMD ["python", "app.py"] ``` ### 7. 编写 Jenkinsfile 在 Gitee 项目根目录下创建一个 Jenkinsfile,用于定义 Jenkins构建流程。示例 Jenkinsfile 如下: ```groovy pipeline { agent any stages { stage('Checkout') { steps { git 'git@gitee.com:yourusername/yourproject.git' } } stage('Build Docker Image') { steps { sh 'docker build -t yourimage:latest .' } } stage('Run Docker Container') { steps { sh 'docker run -d -p 80:80 yourimage:latest' } } } } ``` ### 8. 配置 Gitee WebHook 在 Gitee 项目的“管理” -> “WebHook” 中添加一个新的 WebHook,填写 Jenkins 的 WebHook 地址(`http://服务器IP:8080/gitee-webhook/`)。 ### 9. 触发自动部署Gitee 项目有代码更新时,Gitee自动触发 Jenkins 任务,完成项目自动部署
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值