GitLab 运行GitLab-Runner CI/CD发布

本文详细介绍了如何在192.168.10.12上利用Docker安装GitLab Runner,注册并配置Runner,设置全局变量,编写.gitlab-ci.yml文件以实现从Go源码编译、Docker镜像打包到应用部署的CI/CD流程。同时,文章还涵盖了如何设置GitLab通知企业微信机器人的操作步骤。
摘要由CSDN通过智能技术生成

本文主要演示使用A发布项目到 B上,和注册GitLab Runner,添加docker类型的Executor来执行构建,并以此为基础完成一个go源码示例项目从编译代码构建、docker镜像打包到应用部署的CI/CD过程。

A:192.168.10.12 gitlabrunner
B:192.168.10.19 端口2375 需要发布的目标
Gitlab ip:192.168.10.9

一、在192.168.10.12上使用docker安装gitlab-runner

[root@adscom gitlab]# mkdir -p /config  #创建配置目录
[root@adscom data]# docker pull gitlab/gitlab-runner:v14.6.1 #拉取gitlab-runner镜像
[root@adscom ~]# docker run -d --name my-runner -v /config/:/etc/gitlab-runner gitlab/gitlab-runner:v14.6.1   #启动容器
[root@adscom ~]# docker exec -it my-runner bash  #进入容器

二、登录GitLab注册信息

1 获取注册token信息

在这里插入图片描述
2 在192.168.10.12上进行非交互式注册gitlab-runner
需要进入到gitlab-runner容器中

bash-5.0# gitlab-runner register \
     --non-interactive \
     --executor "docker" \
     --docker-image golang:1.17.6-alpine3.15 \
     --url "http://192.168.10.9/" \
     --registration-token "mNaxzsqyxpwQQCxJkSTa" \
     --description "docker-my111" \
     --tag-list "testrunner1" \
     --run-untagged="true" \
     --locked="false" \
     --access-level="not_protected"

可在GitLab上看到注册成功的GitLab Runner,如下图所示。

在这里插入图片描述
三、缓存配置
GitLab Runner对缓存方案的支持有限,所以
可以通过修改config.toml,需要使用挂载Volume的方式做缓存。

root@ubuntu:/config# pwd
/config
vim config.toml 

Docker in Docker
Docker技术目前在DevOps中被广泛使用,我们需要将测试或者构建的代码和自动化脚本打包成Docker镜像,然后部署在各运行环境中。而在CI/CD中,我们常用一些CI/CD服务器,比如Jenkins和GoCD来构建与部署我们的应用,从而实现CI/CD的自动化。现在一些CI/CD服务器也被Docker化运行在真实的物理机上。于是我们需要在CI/CD服务器的Docker container里面来构建(build)与运行(run)我们的Docker镜像,这就涉及到"Docker run Docker"的问题。
一个很自然的想法是,我们是不是需要在CI/CD服务器镜像中安装一个Docker Daemon和Docker命令呢?但是Docker里面跑Docker总感觉有些蹩脚,额外安装与运行Docker无疑增加了CI/CD服务器镜像的大小,同时还增加Docker的深度。
实际上,我们并不需要在CI/CD服务器上安装Docker。通过如下的命令在CI/CD服务器上运行我们的镜像:

 volumes = ["/var/run/docker.sock:/var/run/docker.sock","/cache"]

也可以在注册时加入(官方的方法):

gitlab-runner register \
     --non-interactive \
     --executor "docker" \
     --docker-image golang:1.1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值