jenkins 使用

 

安装

ubuntu系统安装jenkins

 

参考

gitlab配置

参考

启动jenkins

nohup java -jar jenkins.war >out.log 2>&1 &

 关闭sulinux,firewall

jenkins部署go脚本

source /etc/profile     #这里需要安装golang并配置环境变量
--------------------------------------------------------
#这里是我自己的profile文件中golang的环境变量
export GO111MODULE=on
export GOROOT=/usr/local/go 
export GOPATH=/home/gopath
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
export GOPROXY=https://goproxy.cn,direct
--------------------------------------------------------

cd /edu/volumes/jenkins_home/workspace/edu  #进入挂载的jenkins工作目录中找到部署的代码
rm -rf main             #移除之前打包的可执行文件
go build main.go        #打包命令
cp main /edu/build/     #复制打包文件到需要部署到的位置
cd /edu/build/          #进入需要部署的位置
sh build.sh             #执行部署目录下的脚本文件
--------------------------------------------------------
#以下是build.sh文件的代码
#!/usr/bin/env bash
go_id=`ps -ef|grep "./edu-app" |grep -v "grep" | awk '{print $2}'`
if [ -z "$go_id" ];
then
    echo "[go pid not found]"
else
    kill -9 $go_id
    echo "killed $go_id"
fi

echo "clean old file"
rm -rf edu-app
rm -rf edu-app.log
if [ -f main ]; then
    echo "strat new process"
    mv main edu-app
    chmod -R 777 edu-app
    nohup ./edu-app >edu-app.log 2>&1 &
else
    echo "edu-app file not found,qiut"
fi
--------------------------------------------------------
这里要注意的是,脚本中把main文件名改为edu-app然后部署,然后每次部署之前先查找之前占用的端口并杀死这个进程,最后执行这一次的打包文件。
View Code

 插件

远程部署

Gitlab Hook、Build Authorization Token Root、Publish Over SSH、Gitlab Authentication、Gitlab、Git Paramete

Publish Over SSH

 delopy to cintain

ssh                #执行远程脚本

gitlab            #集成gitlab用

Build Authorization Token Root #构建授权token

Gitlab hook #钩子插件

配置仓库yum安装(推荐)

参考

 修改jenkins_home(由于默认位置空间不足)

添加环境变量方法:
vi /etc/profile
在文件最后添加JENKINS_HOME:
export JENKINS_HOME=/home/JenkinsWorkspace
使之立刻生效
source /etc/profile
View Code

 修改国内镜像

https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

 参考部署go项目

 推送触发与合并触发配置

参考

 

posted @ 2020-09-19 16:25  jiuchen  阅读(184)  评论(0编辑  收藏  举报