0
点赞
收藏
分享

微信扫一扫

Docker+Jenkins+Gitee+Maven构建后台jar包后通过命令备份、替换、重启docker-compose编排的java服务


场景

docker-compose入门以及部署SpringBoot+Vue+Redis+Mysql(前后端分离项目)以若依前后端分离版为例:

​​docker-compose入门以及部署SpringBoot+Vue+Redis+Mysql(前后端分离项目)以若依前后端分离版为例

在上面使用docker-compose编排的java服务,如果要更新jar包时

需要停掉java服务,并替换jar包,然后再启动java服务。

如果是结合jenkins构建的jar包并通过ssh上传至服务器之后,如果通过命令实现

原jar包备份、新jar包替换、docker-compose编排的服务重启。

Docker+Jenkins+Gitee+Maven构建后台jar包后配置SSH传送到服务器并执行指定命令:

​​Docker+Jenkins+Gitee+Maven构建后台jar包后配置SSH传送到服务器并执行指定命令

上面已经将构建的jar包通过ssh上传到服务器,并且简单执行了一个输出命令。


实现

1、在任务-配置-Post Steps中修改要执行的Exec command的内容。

Docker+Jenkins+Gitee+Maven构建后台jar包后通过命令备份、替换、重启docker-compose编排的java服务_jar包

如何确定命令执行没问题。

可以先在服务器上逐行执行需要的命令,确保每一步没有问题之后,将完整命令填到此处。

2、示例命令内容如下

echo "进入/home/fzysShow/java目录,并备份原jar包"
cd /home/fzysShow/java
sudo tar -cvf ./bak/fzysShow-$(date '+%Y%m%d%H%M%S').tar fzys.jar

echo "停止docker-compose的java服务"
cd /home/fzysShow
sudo docker-compose stop java

echo "删除原docker-compose的jar包"
sudo rm -rf ./java/fzys.jar

echo "替换新jar包"
sudo mv /home/iunisjzx/ruoyi-admin.jar /home/fzysShow/java/fzys.jar

echo "启动新jar包"
sudo docker-compose start java

echo "jar包更新成功"

注意:

这里通过jenkins构建的jar包的路径为/home/iunisjzx/ruoyi-admin.jar

docker-compose.yml所在的路径为/home/fzysShow

编排的jar包在此路径下java目录。

上面的命令首先将原jar包进行备份,并添加时间戳命名。

然后停止原java服务,删除原jar包,移动构建后的jar包到java服务所在路径。

然后启动java服务。

3、命令逐条执行没有问题后,保存并重新构建。

Docker+Jenkins+Gitee+Maven构建后台jar包后通过命令备份、替换、重启docker-compose编排的java服务_jenkins_02

构建日志输出正常,无报错。

相应目录下jar包备份也已经实现。

Docker+Jenkins+Gitee+Maven构建后台jar包后通过命令备份、替换、重启docker-compose编排的java服务_jenkins_03

举报

相关推荐

0 条评论