基础架构之Gitlab Runner
基础架构之Gitlab Runner也是常用的基础设施,我们接着GitLab操作,具体使用GitlabRunner,如果不熟悉可以见官方详细介绍https://docs.gitlab.com/runner,这篇文章主要介绍安装及项目使用。
(一) 环境要求
- Centos 7.5.1804
- Docker 18.06.1-ce
- gitlab/gitlab-ce
- gitlab/gitlab-runner
(二) 安装设置
- GitLab设置
a) 知道上篇文章,我们创建的demo项目,依次点击settings-> ci/cd-> Runners,可以看到如下图所示
记住这里的URL及token,后面注册Runner的时候会用到。
- 执行器安装
sudo docker run -d --name gitlab-runner-docker --restart always -v /srv/gitlab-runner-docker/config:/etc/gitlab-runner -v /usr/bin/docker:/usr/bin/docker -v /usr/lib64/libltdl.so.7:/usr/lib/x86_64-linux-gnu/libltdl.so.7 -v /var/run/docker.sock:/var/run/docker.sock gitlab/gitlab-runner:latest
。
等命令执行完成后,可以通过命令查看下该服务的状态,
,待状态为Up的时候,我们就可以注册执行器了。
- 注册
运行如下命令,注册执行器
sudo docker exec -it gitlab-runner-docker gitlab-runner register -n --url http://192.168.1.215/ --registration-token xv3VmFtGnaKzLRx8EPJx --tag-list=dev --description "dockersock" --docker-privileged=true --docker-pull-policy="if-not-present" --docker-image "docker:latest" --docker-volumes /var/run/docker.sock:/var/run/docker.sock --docker-volumes /root/m2:/root/.m2 --executor docker
这里注意要替换前面步骤看到的URL,及Token。
待提示成功后,我们到Runners就可以看到如下所示,说明执行器注册成功
- 项目使用
a) 修改gitlab-ci.yml内容,进行功能测试
variables:
stages:
- compile
- package
- deploy
before_script:
- echo '开始构建...... '
build:
stage: compile
script:
- echo '正在执行compile......'
only:
- master
tags:
- dev
package:
stage: package
script:
- echo 'package......'
only:
- master
tags:
- dev
after_script:
- echo '结束构建......'
deploy:
stage: deploy
script:
- echo '正在执行compile......'
only:
- master
tags:
- dev
提交后,会触发执行器。
b) 查看进度及结果
点击图标可以查看执行进度,
点击后,会显示进度详情,如图所示
点击相应的阶段,可以看到详细的执行信息
这样基础架构之Gitlab Runner就介绍完了,下篇文章我们会跟具体项目结合起来讲解,如果在开发中遇到问题,也可以留言共同探讨共同进步。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端