背景
Gitlab-Runner是一款用于执行软件集成脚本的工具,它配合Gitlab-CI使用,是Gitlab代码管理工具的一部分。当软件工程师提交代码到Gitlab仓库时,Gitlab-CI就会通知对应的Gitlab-Runner执行预先编辑好的集成脚本以完成定制化的软件持续集成。Gitlab-Runner通常单独安装或以Docker容器的形式部署,而Gitlab-CI和Gitlab集成在一起用于调用Gitlab-Runner。
安装
在此我们以Windows10下安装基于Docker的Gitlab-Runner,Ubuntu上安装方式雷同。
下载Windows 10 docker并安装
https://www.docker.com/docker-windows
由于Windows 10已经带有原装的Linux版本,所以可以直接安装Docker,对于Windows 10之前的Windows版本需要安装Docker工具包DockerToolbox。
设置Gitlab-Runner国内镜像
由于访问国外的Gitlab-Runner服务器速度较慢,可以使用过的youdao镜像
在Docker的settings页面,设置Daemon->Registery mirrors.
检查Docker安装版本
运行 docker version
拉取最新的Gitlab-Runner到Docker
docker pull gitlab/gitlab-runner:latest
拉取完后查看拉取的image信息如下
把image添加到Container
docker run -d --name gitlab-runner --restart always \
-v /srv/gitlab-runner/config:/etc/gitlab-runner \
-v /var/run/docker.sock:/var/run/docker.sock \
gitlab/gitlab-runner:latest
至此,Windows10上基于Docker的Gitlab-Runer就安装成功,并加载起来了。
使用
Gitlab-Runner配合Gitlab, Gitlab-CI使用
注册Gitlab-Runner到工程
docker exec -it gitlab-runner gitlab-ci-multi-runner register
此时你需要填写一些信息,该信息可以在你的Gitlab工程页面查看
一旦注册成功,你在该工程页面可以看到如下信息
2. 添加脚本
Gitlab-Runner配合.yml文件使用,所以你需要在你的工程根目录下增加一个文件.gitlab-ci.yml
该文件定义了你期望的持续集成的所有流程,比如:单元测试
3. 此时当提交代码时Gitlab-CI就会调用对应的Gitlab-Runner,运行的效果如图
你还可以定义定时任务和事件通知web hook等。
扩展
如果你的项目环境不是在Linux而是在Windows下,你就无法使用Docker,这时你可以使用Windows下的Gitlab-Runner执行你的脚本,
下载地址:
x86: https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-windows-386.exe
Amd64:https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-windows-amd64.exe
注册:
./gitlab-runner.exe register
安装service并运行:
gitlab-runner install
gitlab-runner start
关注非驴非码公众号了解更多信息:
领取专属 10元无门槛券
私享最新 技术干货