kuboard 通过 docker部署 docker部署gogs_jar

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


一、前言

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

二、工作原理

kuboard 通过 docker部署 docker部署gogs_kuboard 通过 docker部署_02

   以上为基本工作原理,只是为了开发人员更好的理解画的(个人理解)。其实就是开发人员把代码提交到代码仓库,就可以自动打包部署。

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

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

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

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

 三、新建项目

1.主页→新建项目

kuboard 通过 docker部署 docker部署gogs_jar_03

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

kuboard 通过 docker部署 docker部署gogs_jar_04

 

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

kuboard 通过 docker部署 docker部署gogs_开发人员_05

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

kuboard 通过 docker部署 docker部署gogs_开发人员_06

 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

 

kuboard 通过 docker部署 docker部署gogs_开发人员_07

 

 

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
fisturtup.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 &

kuboard 通过 docker部署 docker部署gogs_html_08

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

kuboard 通过 docker部署 docker部署gogs_jar_09

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

kuboard 通过 docker部署 docker部署gogs_jar_10

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

kuboard 通过 docker部署 docker部署gogs_开发人员_11

 

 

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

kuboard 通过 docker部署 docker部署gogs_html_12

 

 

 

kuboard 通过 docker部署 docker部署gogs_kuboard 通过 docker部署_13

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

kuboard 通过 docker部署 docker部署gogs_开发人员_14