美文网首页运维DevOps创业
gitlab-jenkins可持续集成构建部署(超详细图文教程!

gitlab-jenkins可持续集成构建部署(超详细图文教程!

作者: tony_cha_cha | 来源:发表于2019-01-24 18:20 被阅读47次

在 jenkins 中安装 gitlab 插件

准备工作

  • 应用服务器 (ip地址: 192.168.56.102)

  • jenkins 服务器 (ip地址: 192.168.56.103)

  • gitlab 服务器 (ip地址: 192.168.56.104)

我们需要实现的是:

1. 代码 push 到 gitlab

2. gitlab 触发 jenkins 进行构建

3. jenkins 构建完成后部署到应用服务器进行访问

首先需要安装 gitlab 的相关插件: Gitlab Hook PluginGitLab Plugin

plug1.png
plugin2.png
plugin3.png

在 gitlab 中, 根据你的账号生成token

gitlab_token1.png
gitlab_token2.png
gitlab_token.png

在 jenkins 中配置 gitlab 信息

gitlab_config1.png
gitlab_config2.png
gitlab_confog3.png
gitlab_config4.png

创建一个maven项目

0.png
1.png
3.png

小插曲: 这里是向 gitlab 中添加 jenkins 服务器的 ssh key

gitlab_config5.png
4.png
5.png
6.png

下面的 SSH 配置, 是在 jenkins 从 gitlab 拉取到代码之后, 在应用服务器进行构建的配置, 详细的介绍可以参考这篇文章 jenkins构建部署springboot应用

7.png

start.sh需要的目录结构如下


[root@master ~]# tree -L 2
.
├── anaconda-ks.cfg
├── app
│   └── backup
├── Jenkins-in
│   └── start.sh

start.sh


DATE=$(date +%Y%m%d)
export JAVA_HOME PATH CLASSPATH
JAVA_HOME=/usr/local/java/jdk1.8.0_172
PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH
DIR=/root/app/
JARFILE=demo-0.0.1-SNAPSHOT.jar
if [ ! -d $DIR/backup ];then
   mkdir -p $DIR/backup
fi
cd $DIR
ps -ef | grep demo-0.0.1-SNAPSHOT.jar | grep -v grep | awk '{print $2}' | xargs kill -9
mv $JARFILE backup/$JARFILE$DATE
mv -f /root/Jenkins-in/$JARFILE .
BUILD_ID=dontKillMe nohup java -jar $JARFILE >/dev/null  &
echo "Execute shell Finish"


0.1.png

下面是 gitlab 服务器的配置

这里创建一个即将进行构建的测试项目

8.png

给项目代码配置 web hook

9.png

注意: 这里, 因为我开了多台虚拟机本地进行配置的, gitlab 这里默认是无法使用 web hook 进行本地的访问的, 需要进行一下配置, 可以看下面的一张图

10.png

设置 gitlab 可以进行本地的 web hook

13.png

生成 web hook

11.png
12.png

从 gitlab 中克隆项目下来, 修改之后重新 push 上去, 触发 jenkins 构建:

build.png
page.png

到此整个流程结束

=最后=

各位朋友们, 内容我会持续更新, 目前还是很浅显的.

如果有什么问题可以直接评论, 给我一些意见哈, 谢谢大家!!!

相关文章

网友评论

    本文标题:gitlab-jenkins可持续集成构建部署(超详细图文教程!

    本文链接:https://www.haomeiwen.com/subject/wgaejqtx.html