一、说明
这里要有docker基础,如果没有docker基础,这篇文档就看不怎么懂了。
二、Docker安装jenkins
1.使用docker安装jenkins
(1)下载jenkins镜像
docker pull jenkins/jenkins:lts
(2)docker创建jenkins容器
docker run -p 8080:8080 -p 50000:5000 -p 8099:8099 --name jenkins -u root -v /mydata/jenkins_home:/var/jenkins_home -d jenkins/jenkins:lts
这里8099端口暴露出来,因为当部署的springboot项目端口就是8099
(3)访问ip:8080端口,就能访问jenkins界面
2.jenkins安装插件
序号 插件名称 插件作用
1 locale plugin 将jenkins翻译成中文界面
2 Maven Integration plugin 可以构建一个maven项目
3 Git Git相关操作
…
3.配置全局变量
(1)配置jdk路径
使用命令进入jenkins容器中
docker exec -it 9b /bin/bash
echo $JAVA_HOME
将jdk路径配置到jdk路径中,如下图所示:
(2)配置maven全局变量
三、jenkins部署springboot
1.IDEA创建简单的springboot项目
(1)创建一个简单的springboot项目,就是只有一个测试类,方便测试部署效果
(2)将代码发布到码云上(也可以发布到github上,但是github比较卡,用码云很快)
码云代码地址:https://gitee.com/mwtbl/jenkins-build.git
2.jenkins部署springboot项目
(1)新建一个maven项目
(2)配置jenkins相关参数,如下图所示
这里配置码云地址,选择密码,同时指定分支master(视情况指定)
配置凭据,凭据就是访问目标地址的账号密码,这里指的是码云的账号密码。
这里就是执行maven命令,将项目打包成jar包
配置到这里,我们就可以保存,试着构建一下。
这里构建一下,看下是否打包了
在这里我们构建成功了,项目的打成jar包了,在我们最初的部署时,直接java -jar *.jar运行项目就好了,但是打包后的操作需要在jenkins操作。
继续启动配置:
#!/bin/bash
#服务名称
SERVER_NAME=jenkins-build
# 源jar路径,mvn打包完成之后,target目录下的jar包名称,也可选择成为war包,war包可移动到Tomcat的webapps目录下运行,这里使用jar包,用java -jar 命令执行
JAR_NAME=jenkins-build-0.0.1-SNAPSHOT
# 源jar路径
#/usr/local/jenkins_home/workspace--->jenkins 工作目录
#demo 项目目录
#target 打包生成jar包的目录
JAR_PATH=/var/jenkins_home/workspace/jenkins-build/target/
# 打包完成之后,把jar包移动到运行jar包的目录--->work_daemon,work_daemon这个目录需要自己提前创建
JAR_WORK_PATH=/var/jenkins_home/workspace/jenkins-build/target/
echo "==============查询构建前进程ID:$SERVER_NAME================"
PID=`ps -ef | grep "$SERVER_NAME" | awk '{print $2}'`
echo "==============得到进程ID:$PID=============="
echo "==============开始结束进程============="
for id in $PID
do
kill -9 $id
echo "=====killed $id======="
done
echo "==============结束之前进程完成=============="
#复制jar包到执行目录
echo "==========复制jar包到执行目录:cp $JAR_PATH$JAR_NAME.jar ------- $JAR_WORK_PATH=============="
cp $JAR_PATH$JAR_NAME.jar $JAR_WORK_PATH
echo "==============复制jar包完成=============="
cd $JAR_WORK_PATH
#修改文件权限
chmod 755 $JAR_NAME.jar
BUILD_ID=dontKillMe nohup java -jar $JAR_NAME.jar &
保存后,再次构建:
查看日志输出:
访问地址:http://81.69.22.167:8099/jenkins/test
将springboot代码修改一下,重新提交到码云上
再次点击构建,访问地址,发现得到结果: