前提是假设已经部署了gitlab代码提交网站,
一、安装gitlab-runner容器
创建gitlab-runner目录进入,并创建docker-compose.yml文件
mkdir gitlab-runner
cd gitlab-runner
vim docker-compose.yml
docker-compose配置文件docker-compose.yml内容如下:
services:
gitlab-runner:
image: gitlab/gitlab-runner:latest
container_name: gitlab-runner
restart: always
volumes:
- ./config:/etc/gitlab-runner
- /var/run/docker.sock:/var/run/docker.sock
配置完成后,启动gitlab-runner容器(容器下载尽量使用代理)
docker-compose up -d
二、在gitlab上为项目添加runner
gitlab上首先进入项目中,
左侧选择 设置 -> CI/CD,
选择Runner并展开,并选择新建项目 runner
标签栏目填写标签,本项目填写为temp01(这个temp01非常重要,.gitlab-ci.yml配置文件中必须配置此标签才能使用此runner),并点击创建。
接下来进入到另外一个界面,记录里面的url以及token。
三、gitlab-runner容器中的配置
部署gitlab-runner的容器注册runner
docker exec -it gitlab-runner gitlab-runner register
配置url以及token与前一步骤保持一致,类型选择shell方式完成部署
四、为项目配置.gitlab-ci.yml
由于步骤二创建的runner具有标签,因此需要在项目的门禁文件中配置tag,与步骤二保存一致,否则此runner不能够执行门禁,一直为阻塞状态,典型配置如下(注意tag与步骤二标签名一致):
stages :
- build
build-project:
stage : build
tags:
- test
script:
- mkdir build
- cd build
- cmake .. && cmake --build . && make
四、注意事项
windows下安装gitlab runner后,若执行任务过程中需安装新的工具,并且需将工具的路径添加到环境变量中时,请重启gitlab runner后,环境变量的路径才可添加到gitlab runner的系统路径中