有什么可以帮助到您的?

gitlab-runner安装与配置

gitlab-runner安装

gitlab-runner容器

  1. 使用gitlab.com安装部署指导手册下载相应gitlab-runner镜像并使用docker运行即可。
  2. gitlab-runner以容器的方式提供服务时,可在启动容器时通过-v将本地gitlab-runner/config.toml文件挂载到容器中,以提供认证等配置信息。对本地文件config.toml的修改将不能即时生效,需要重启容器。

启动容器

  1. 以本地文件挂载方式启动容器
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 \
     harbor.rjb.dgbc.net.cn/cs/gitlab-runner:latest
  1. 以docker volumes方式启动容器
# 创建docker volume
docker volume create gitlab-runner-config

# 使用volume启动runner
docker run -d --name gitlab-runner --restart always \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -v gitlab-runner-config:/etc/gitlab-runner \
    harbor.rjb.dgbc.net.cn/cs/gitlab-runner:latest

注册到gitlab

# 本地文件挂载的注册指令
docker run --rm -it -v /srv/gitlab-runner/config:/etc/gitlab-runner harbor.rjb.dgbc.net.cn/cs/gitlab-runner register

# docker volume挂载的注册指令
docker run --rm -it -v gitlab-runner-config:/etc/gitlab-runner gitlab/gitlab-runner:latest register

gitlab-runner 访问镜像仓库

gitlab-runner的docker runner在运行时需要访问镜像仓库并通过认证才能拉取镜像,故需要为runner指定镜像仓库的认证信息,认证信息将保存在gitlab-runner的DOCKER_AUTH_CONFIG环境变量中。

获取docker登录镜像仓库的认证

通过获取登录该仓库的认证配置信息,位于文件~/.docker/config.json

登录指令:

docker login repository-url --username user --password passwd

认证信息示例:

{
        "auths": {
                "gitlab.com": {
                        "auth": "XXXXXXX"
                },
                "registry.gitlab.com": {
                        "auth": "XXXXXXX"
                }
        }
}

项目级镜像仓库认证配置

在项目的gitlab.yml文件的variables中指定DOCKER_AUTH_CONFIG的值:

stages:
 - test
variables:
    DOCKER_AUTH_CONFIG: '{"auths":{"repository-url":"repository-key"}}'

系统级镜像仓库认证配置

在gitlab-runner的配置文件/etc/gitlab-ruuner/config.toml中增加DOCKER_AUTG_CONFIG环境变量的值,并重启runner使之生效

[[runners]]
 environment = ['DOCKER_AUTH_CONFIG={ "auths": { "registry.gitlab.com": {"auth": "xxxxx"}}}']


评论区(暂无评论)

我要评论

昵称
邮箱
网址
0/200
没有评论
目录导航

更多文档