欢迎光临
我们一直在努力

Jnnkins+Gogs+Docker集成自动化部署教程(实战教程)

一、前言

为了方便小公司没有运维开发人员,利用Jenkin解决了繁琐的打包部署问题。这次我就写了一个gogs的集成教程,我觉的Gogs私服比较简单,其他的GitLab、svn、GitHub基本上也是一样的,搭建好了,开发人员只需要提交到版本控制仓库,即可自动打包部署。

二、工作原理

Jnnkins+Gogs+Docker集成自动化部署教程(实战教程)

  以上为基本工作原理,只是为了开发人员更好的理解画的(个人理解)。其实就是开发人员把代码提交到代码仓库,就可以自动打包部署。 详情可查看官方文档:https://www.jenkins.io/zh/

 三、准备工作

1.需要准备一台服务器,大家可以在网上买,个人学习的话还是建议大家去安装一个虚拟机,去装一个Linux系统。关键字点击跳转:虚拟机安装教程    Linux安装教程 

2.需要准备一个远程连接工具,连接到Linux系统,作者采用的是:Xshell 工具 (注意:Xshell下载地址翻到本文最下面)。

3.Linux安装jdk教程:

https://www.cnblogs.com/fuzongle/p/12811057.html

4.Linux安装git教程:

https://www.cnblogs.com/fuzongle/p/12830572.html

5.Linux安装maven教程:

https://www.cnblogs.com/fuzongle/p/12825048.html

6.集成Docker+Gogs教程:

https://www.cnblogs.com/fuzongle/p/12781828.html

7.Docker安装jenkins教程:

https://www.cnblogs.com/fuzongle/p/12834080.html

8.Jenkins安装成功后配置教程:

https://www.cnblogs.com/fuzongle/p/12840219.html

以上如有安装过的可以跳过,如果安装种遇到任何问题翻到最下面,寻找帮助,希望能帮助大家。

 三、新建项目

1.主页→新建项目

Jnnkins+Gogs+Docker集成自动化部署教程(实战教程)

 2.在General中选择丢弃旧的构建,保持构建天数自定义,保持最大构建个人数,根据个人需求。

Jnnkins+Gogs+Docker集成自动化部署教程(实战教程)

 

 3.将Gogs仓库的地址连接到源码管理中,账号密码是Gogs私服的账号密码,分支可以自定义。

Jnnkins+Gogs+Docker集成自动化部署教程(实战教程)

 4.触发远程构建 (例如,使用脚本)

Jnnkins+Gogs+Docker集成自动化部署教程(实战教程)

  5.编写shell命令如下,保存即可。

#!/bin/bash
chmod 777 /var/jenkins_home/stop.sh
/var/jenkins_home/stop.sh
chmod 777 /var/jenkins_home/startup.sh
BUILD_ID=dontiKillMe /var/jenkins_home/startup.sh

 Jnnkins+Gogs+Docker集成自动化部署教程(实战教程)

 

 

 6.在jenkins_mount工作目录下新建,sturtup.sh stop.sh

stop.sh

#!/bin/sh
cd /var/jenkins_home/jenkins_war
echo "stopping helloboot application...."
pid=`ps -ef | grep canal-0.0.1-SNAPSHOT.jar | grep -v grep | awk '{print $2}'`
if ["$pid" == ""]
then
echo "helloboot is already stop!"
else
echo "kill -9 的pid:"+$pid
kill -9 $pid
fi

sturtup.sh

#!/bin/bash
echo "remove old helloboot.jar ..."
rm /var/jenkins_home/jenkins_war/canal-0.0.1-SNAPSHOT.jar
cp /var/jenkins_home/workspace/test/target/canal-0.0.1-SNAPSHOT.jar /var/jenkins_home/jenkins_war
sleep 2s
echo "running helloboot.jar...."
daemonize -E BUILD_ID=dontKillMe
nohup java -jar /var/jenkins_home/jenkins_war/canal-0.0.1-SNAPSHOT.jar --server.port=8090 &

Jnnkins+Gogs+Docker集成自动化部署教程(实战教程)

 7.我们在Gogs私服上,上传一个java项目,点击仓库配置,选择web钩子,选择Gogs。

Jnnkins+Gogs+Docker集成自动化部署教程(实战教程)

  8.配置测试Gogs推送Jenkins是否能够正常推送。

Jnnkins+Gogs+Docker集成自动化部署教程(实战教程)

 9.测试项目是否正常运行,咱们在开发工具中,随便写一个访问的API接口,提交一下。

Jnnkins+Gogs+Docker集成自动化部署教程(实战教程)

 

 

 10.我们看jenkins正在自动构建,如下图

Jnnkins+Gogs+Docker集成自动化部署教程(实战教程)

 

 

 Jnnkins+Gogs+Docker集成自动化部署教程(实战教程)

11.构建成功后,ip加上端开口访问一下:

Jnnkins+Gogs+Docker集成自动化部署教程(实战教程)

 

 

 

注意:

1.如果有任何不懂的地方可以咨询我,随时欢迎互相帮助。

2.技术交流群QQ:422167709。

3.如果希望学习更多,希望微信扫码,长按扫码,帮忙关注一下,举手之劳,当您无助的时候真的能帮你。非常感谢您关注公众号 "编程小乐",回复 “Xshell” 领取软件下载地址,回复 “vm下载” 领取软件下载地址。

4.鸣谢:jenkins官方 https://www.jenkins.io/zh/

Jnnkins+Gogs+Docker集成自动化部署教程(实战教程)

  • 海报
海报图正在生成中...
赞(0) 打赏
声明:
1、本博客不从事任何主机及服务器租赁业务,不参与任何交易,也绝非中介。博客内容仅记录博主个人感兴趣的服务器测评结果及一些服务器相关的优惠活动,信息均摘自网络或来自服务商主动提供;所以对本博客提及的内容不作直接、间接、法定、约定的保证,博客内容也不具备任何参考价值及引导作用,访问者需自行甄别。
2、访问本博客请务必遵守有关互联网的相关法律、规定与规则;不能利用本博客所提及的内容从事任何违法、违规操作;否则造成的一切后果由访问者自行承担。
3、未成年人及不能独立承担法律责任的个人及群体请勿访问本博客。
4、一旦您访问本博客,即表示您已经知晓并接受了以上声明通告。
文章名称:《Jnnkins+Gogs+Docker集成自动化部署教程(实战教程)》
文章链接:https://www.456zj.com/38230.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址