gitlab runners in docker
本文记录搭建 gitlab runners in docker 的过程,以便翻阅。
gitlab runners in docker :意思为,通过 gitlab 启用项目的的 runner ,以便当项目代码发生变动时触发的 CI 操作,例如运行单元测试等,in docker 即该 CI 操作通过指定镜像生成的容器中运行,达到不同项目 CI 使用统一的 runners 并发且互不干扰的目的。
安装 runners
1 # For RHEL/CentOS/Fedora 2 yum install gitlab-ci-multi-runner 3 useradd --comment 'GitLab Runner' --create-home gitlab-runner --shell /bin/bash 4 gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runner 5 gitlab-runner start
注册 runners
URL 和 token :需从 gitlab 项目的 runner 配置中选取
牢记此时的 runner 注册的 tag:cmp-unit
executor 这里需要选择为: docker
images:填写自己的 ci 运行镜像,届时运行环境的容器从该镜像启动
runner 注册完成后,通过gitlab即可看到该runner
配置 runners
vim /etc/gitlab-runner/config.toml
network_mode="host" 设置容器启动时的网络模式,以便容器连接 gitlab 服务
pull_policy = "if-not-present" 设置镜像优先选择本地
编写 .gitlab-ci.yml
image: cmp-unit:1.0
stages:
- unit
unit_job:
stage: unit
except:
- tags
script:
- cat /etc/pip.conf
tags:
- cmp-unit
image 即为 runner 注册时选择的 images
tags 即为 runner 注册时填写的 tag ,这里为 cmp-unit
测试 runner🌰