Jenkins+Gitlab+Docker 联动
一、基本环境
| 角色 |
主机地址 |
软件 |
| gitlab |
192.168.119.128:8081 |
gitlab 13.10.3 |
| jenkins |
192.168.119.148:8080 |
jenkins 2.277.2 |
| docker registry |
192.168.119.128:5000 |
v2 |
| deploy host |
192.168.119.128 |
docker-ce 20.10.6 |
1. 关闭主机SElinux
$ setenforce 0
$ sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
2. 配置静态IP
$ nmcli connection modify ens33 ipv4.method manual ipv4.address 192.168.119.128/24 ipv4.gateway 192.168.119.2 autoconnect yes
$ nmcli connection modify ens33 ipv4.method manual ipv4.address 192.168.119.148/24 ipv4.gateway 192.168.119.2 autoconnect yes
$ nmcli con up ens33
3. 防火墙
$ systemctl stop firewalld
$ systemctl disable firewalld
4. docker-ce环境
二、服务器部署
1. gitlab
2. Jenkins
3. registry
$ docker pull registry
$ docker run -d -p 5000:5000 --restart always --privileged \
> -v registry:/var/lib/registry \
> --name registry-server registry:latest
3.1 配置信任私有仓库
$ cat /etc/docker/daemon.json
{
"registry-mirrors": ["https://ogeydad1.mirror.aliyuncs.com"],
"insecure-registries": ["192.168.119.128:5000"]
}
三、配置gitlab
1. gitlab上创建项目
2. 开发人员将代码上传到仓库
2.1 克隆仓库
$ git clone http://192.168.119.128:8081/development/python-dev.git
$ git checkout develop
$ git branch
* develop
master