Docker持续集成(八)jenkins之自动化打包、部署

 上文我们讲述了jenkins插件安装及配置 Docker持续集成(七)jenkins之插件安装及配置

  本文我们讲解自动化打包、部署

 一、创建任务

二、源码管理,选择Git

三、Build

注意点:

1) 我配置的git路径下面是多个项目,这里配置的jack-discovery-eureka工程,所以Root Pom配置的是"jack-discovery-eureka/pom.xml",如果你直接配置的是工程的git地址,则Root Pom这里直接填写"pom.xml"即可

2) 下面命令不要在最前面加"mvn",否则会报错。docker:build 表示的是创建镜像

 

四、Post Steps

4.1  点击Add post-build step, 选择执行 Execute shell

4.2  输入shell命令,这里可以直接填写命令,也可以执行 shell 脚本,我这里添加了2个shell串口。

说明:

第一个是推送镜像到私有仓库

第二个是执行一个启动脚本、脚本内容如下:

# 判断是否拉取镜像
docker images 192.168.1.8:5000/demo:0.0.1-SNAPSHOT &> /dev/null
if [ $? -ne 0 ] 
then
    docker pull 192.168.1.8:5000/demo:0.0.1-SNAPSHOT
else
    echo "images is exists !!"
fi


# 判断是否启动该容器
docker ps | grep demo-test
if [ $? -ne 0 ] 
then
 echo "启动进程"
 docker run -d -p 8080:8080 --name=demo-test --privileged --restart=always 192.168.1.8:5000/demo:0.0.1-SNAPSHOT
else
 echo "重启进程"
fi

总结:

1) 我在jenkins执行shell命令"docker ps | grep demo-test"会发生错误,所以我用的一个脚本命令来执行;

2) shell命令if else $? -ne 命令 学习了解,见博文:centos7 常用shell 命令整理

3) 这里启动单个工程可以这样玩、如果启动的工程有依赖工程怎么处理?可以一个一个的去启动,但是效率是否不太高?是否有更好的方式?

五、启动任务

5.1 主界面启动任务

5.2 查看日志

5.3 日志界面

六、私有仓库查看镜像

七、查看镜像和容器,检查是否启动成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值