gitlab ci Runner 配置

gitlab可以配置本地的runner,配置之后,执行tag yeshen-pc 之后,就可以跑到我定义的机器上。

好处是:

  1. 如果服务器没有支持ci/cd,可以本机直接跑(就是自己电脑做基建了)
  2. 如果服务器不支持访问dockerhub,但是本机可以,这样也可以用到dockerhub上的镜像了
  3. 可以配置指定本地镜像,这样在前期开发不太稳定的时候,不需要频繁构建上dockerhub

本地 Runner 配置

Step 1 注册 Runnner

gitlab -> project(ci-test) -> settings -> CI/CD -> Runners -> Specific runners

https://yeshen.org/ys/ci_test/-/settings/ci_cd

Step 2 注册

sh 复制代码
# 注册使用上面的配置信息
$ docker volume create gitlab-runner-config
$ docker run --rm -it -v gitlab-runner-config:/etc/gitlab-runner gitlab/gitlab-runner:latest register

----------
# Enter the GitLab instance URL (for example, https://gitlab.com/):
上面截图的URL
# Enter the registration token:
上面截图的TOKEN
# Enter a description for the runner:
[cd48fa3a5a05]: yeshen-pc            
# Enter tags for the runner (comma-separated):
yeshen-personal-pc
# Enter optional maintenance note for the runner:
yeshen-pc
# WARNING: Support for registration tokens and runner parameters in the 'register' command has been deprecated in GitLab Runner 15.6 and will be replaced with support for authentication tokens. For more information, see https://docs.gitlab.com/ee/ci/runners/new_creation_workflow 
# Registering runner... succeeded                     runner=GR13489414zrDvCSj
# Enter an executor: ssh, parallels, virtualbox, docker, docker-windows, docker+machine, custom, shell, instance, kubernetes, docker-autoscaler:
docker
# Enter the default Docker image (for example, ruby:2.7):
debian:10-slim

step 3 本机运行一个Runner

sh 复制代码
docker run -d --name gitlab-runner --restart always \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v gitlab-runner-config:/etc/gitlab-runner \
  gitlab/gitlab-runner:latest

指定只使用本地镜像(避免从 DockerHub 拉取)

当 runner 以 Docker 方式部署时,可通过修改 config.toml 设置 pull_policy = "never"

步骤

  1. 从容器中复制配置文件:
bash 复制代码
docker cp gitlab-runner:/etc/gitlab-runner/config.toml /tmp/config.toml
  1. 在每个 [runners.docker] 段落下添加:
toml 复制代码
[runners.docker]
  pull_policy = "never"
  1. 将修改后的配置复制回容器并重启 runner:
bash 复制代码
docker cp /tmp/config.toml gitlab-runner:/etc/gitlab-runner/config.toml
docker restart gitlab-runner
相关推荐
xixingzhe21 天前
Java 使用 GitLab4J 实现 WebHook
gitlab
童槿顏丶2 天前
GitLab部署到Linux
linux·运维·gitlab
InfinitePlus3 天前
Gitlab docker版本安装
docker·容器·gitlab
进击切图仔3 天前
GitLab 新用户创建与项目授权操作指南
gitlab
技术小结-李爽4 天前
【工具】git与gitee和gitlab和github等等有什么区别?
git·gitee·gitlab
xiaoxiangsiyan5 天前
GitLab CI/CD 自托管(EE 企业版)+ Kubernetes Runner 集群 + ArgoCD(GitOps 部署)
运维·网络·ci/cd·容器·kubernetes·gitlab·argocd
meijinmeng6 天前
EKS 集群 ArgoCD `v3.0.6 → v3.1.x → v3.2.x` 备份,恢复,升级,巡检手册
argocd·cicd
csdn2015_12 天前
vscode从gitlab拉项目到本地
vscode·gitlab
AOwhisky15 天前
AI审AI:GitLab上线AI代码审查,开发者可以松一口气了吗?
人工智能·gitlab
杨了个杨898216 天前
GitLab的简介及安装
gitlab