主要功能块还是通过脚本来完成的,jenkins提供了一个更直观发布过程和操作页面,gitblit也提供了一个非常友好的操作页面。
实现功能:
# -1-代码发布
# -2-版本回滚(通过git服务器版本切换再rsync同步到服务器上完成回滚)
# -3-添加git tag版本标签
# -4-删除git tag版本标签
# -5-代码回滚(通过发布时拷贝的备份文件恢复完成回滚)
-
环境介绍
线下服务器:192.168.0.210 安装了docker jenkins 、gitblit(非docker)
线上服务器:39.108.100.130
-
实现思路简介
在192.168.0.210服务器搭建好gitblit,然后在docker jenkins的映射工作目录上拉取git代码,并使用git tag标记发布版本号,再通过rsync命令同步到39.108.100.130服务器上对应的发布目录上。回滚的话,将git代码切换到上一个版本号代码,再通过rsync同步到线上服务器上就可以了。 我这里功能做得完善些,所以设置步骤会比较多。
一、192.168.0.210 服务器 设置
gitblit 设置搭建(可参考我之前写的文档, 这里不作叙述,你也可以选择使用docker gitblit快速搭建)
docker jenkins 设置
1. 创建docker jenkins
docker run -p 8800:8080 -p 5000:5000 -v /usr/local/jenkins:/var/jenkins_home -v /usr/local/jenkins_war/jenkins.war:/usr/share/jenkins/jenkins.war -v /etc/localtime:/etc/localtime -d jenkins
-v /usr/local/jenkins:/var/jenkins_home 映射jenkins主目录
-v /usr/local/jenkins_war/jenkins.war:/usr/share/jenkins/jenkins.war 映射使用新的jenkins版本(内置版本提示偏旧了,所以这里重新下载了新的war映射更换,如果你目前下载的docker jenkins 镜像比较新,没提示版本问题,那这一条语句可以省略。
2.免密设置
A. 192.168.0.210服务器ssh到gitblit的免密设置
设置方式可查看我的这篇文档:https://blog.csdn.net/cbuy888/article/details/89884486