使用docker安装jenkins,安装过程不再复述。
docker启动jenkins命令可以参考我另外一篇博客
https://blog.csdn.net/qq_40293993/article/details/108195559
- jenkins配置
系统管理 --> 全局工具配置 配置jdk,maven,settings.xml位置
由于使用的gitlab,所以安装gitlab、git插件 - 新建自由风格项目
①配置gitlab地址,添加凭证,gitlab的登录用户名和密码
②选择构建触发器
高级点开有个token,生成,复制下来,打开gitlab项目的设置–>集成,输入URL和生成的token,点击ok。
③
刚开始我这个mvn找不到,后来选择好maven地址就好了,全局工具配置的settings地址,和maven地址。
startup.sh可以写在项目根目录下面,我这是测试用就直接放在了服务器上。
原理就是maven打包,然后docker build根据Dockerfile 和jar包 打成镜像,然后执行镜像就好了,如果多个服务器,也可以上传到镜像私服然后再拉取,可以参照上一个博客,上面有类似代码。Dockerfile在那偏博客也有说明,两个博客是同一个项目。
startup.sh
#!/bin/bash
export APP=demo
export VERSION=0.0.1-SNAPSHOT.jar
export DOCKER_VERSION=0.0.1
pwd
cp /var/jenkins_home/workspace/test/Dockerfile ./
cp /var/jenkins_home/workspace/test/target/$APP-$VERSION ./$APP.jar
rm -rf /var/jenkins_home/workspace/test/
docker build -t $APP:$DOCKER_VERSION .
echo "删除旧容器"
docker stop $APP
docker rm $APP
echo "删除旧镜像"
docker rmi $APP:$DOCKER_VERSION
echo "运行镜像"
docker run -d --net=host --name $APP $APP:$DOCKER_VERSION
rm -rf `ls | egrep -v '(startup.sh)'`