GitLab 容器化 CI 流程填坑记(一)

本文以SpringBoot项目的部署构建为例,对基于GItLab的CI流程进行简要介绍。

 

环境准备:

1. 系统环境:

操作系统:CentOS 7.2 1511

GitLab:v11.1.4

GitLab-runner:v11.2.0

Docker:17.03.2 ce

 

2. 应用环境:

应用框架:Spring boot v2.0.x

项目构建管理:Maven v3.5.x

 

CI集成流程:

关于证书(HTTPS需要,HTTP请忽略):

注:下述 "hostname.com" 请自行替换为GitLab域名

1. 完整自签证书:

sudo openssl genrsa -des3 -out /etc/gitlab/ssl/hostname.com.key 2048
sudo openssl req -new -key /etc/gitlab/ssl/hostname.com.key -out /etc/gitlab/ssl/hostname.com.csr
sudo openssl x509 -req -days 3650 -in /etc/gitlab/ssl/hostname.com.csr -signkey /etc/gitlab/ssl/hostname.com.key -out /etc/gitlab/ssl/hostname.com.crt

2. 服务端已有证书:

可直接通过浏览器导出证书,并将文件存为hostname.com.crt, 存于/etc/gitlab/ssl/(默认)目录下。

 

完成证书的获取后,可使用:

openssl s_client -connect hostname.com:443 -CAfile hostname.com.crt -state

进行证书的校验。

若返回0则表示无问题,如下图所示:

 

 

具体实现:

1. 安装GitLab:略(直接容器部署即可)

2. 在GitLab中创建项目:略

3. 安装runner:

gitlab-runner有多种安装方式,具体详见 gitlab-runner安装 ,本文采用的docker的方式进行runner的部署:

docker run -d --name bala-runner --restart always \
-v /etc/gitlab-runner/certs/hostname.com.crt:/usr/local/share/ca-certificates/hostname.com.crt \
-v /etc/gitlab-runner/certs/hostname.com.crt:/etc/gitlab-runner/certs/hostname.com.crt \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /root/build_cache:/cache \
gitlab/gitlab-runner:latest

注:

1. 第一和第二个 -v 实现证书目录内容的挂载;

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值