1、准备Git项目,在https://gitee.com/,创建私有项目,待会需配置gitee账号和密码。
2、安装Jenkins
我们现在看下jenkins有哪些版本,docker search jenkins
这里,我们选择jenkinsci/blueocean版本
docker run -p 8080:8080 -p 50000:50000 -p 8580:8580 -v jenkins_data:/var/jenkins_home jenkinsci/blueocean
这里docker run的参数-v,指的是给容器挂载存储卷,挂载到容器的某个目录,jenkins_data是宿主路径,/var/jenkins_home是容器内路径
宿主和容器内,这两个目录的文件,是一样的
控制台输出安装过程日志。。。。。。
/var/jenkins_home/secrets/initialAdminPassword 这个文件是jenkins登录的密码
安装成功,访问服务器的8080端口,解锁jenkins,输入密钥(查看密钥:cat /var/jenkins_home/secrets/initialAdminPassword)
点击继续,选择安装推荐的插件
安装插件中
设置管理员
实例配置,默认即可,点击保存完成
安装完成,重启
访问服务器8080端口,登录
接下来,进行Jenkins全局工具配置
首先查看JAVA_HOME,进入jenkins容器,docker exec -it 7acd2219e701 /bin/bash
管理后台,进入系统管理-》全局工具配置
配置JDK
配置Maven
然后,点击最下面的保存
接着,安装maven集成插件
安装过程,时间比较久
安装完成,创建一个工作任务
设置git信息,添加gitee账号和密码,选择部署分支
设置maven的目标命令,我这个项目是springboot,jar启动,所以命令是clean install
接着设置maven项目构建完成后的,执行的脚本
#!/bin/bash
SERVER_NAME=demo
JAR_NAME=demo-0.0.1-SNAPSHOT
JAR_PATH=/var/jenkins_home/workspace/demo/target
JAR_WORK_PATH=/var/jenkins_home/workspace/demo/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 "结束进程完成"
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
java -jar $JAR_NAME.jar
进入任务控制台,点击立即构建
第一次执行,时间要比较久,因为需要下载maven相关依赖
我们可以看到,jenkins去拉取了git分支的代码,并解析pom.xml文件,进行jar下载
从日志里,我们看到,打包jar包后,进行最后脚本的执行,将jar包指定路径下,进行jar启动
之前我们用docker run启动jenkins容器,指定了宿主主机8580端口,映射容器8580端口,我们的tomcat端口是8580端口(这里省略)。
访问宿主8580端口,浏览器请求测试接口
这样就部署成功了