安装和配置问题 CI/CD
Trouble with install & configuring CI/CD
我们已经完全配置并运行完美的企业 gitlab 服务器。现在我尝试在上面使用 CI/CD。
1. 我们的系统管理员在公司网络上给了我一个虚拟服务器,安装了 ubuntu 20.04。
2. 我阅读(并理解)有关安装和配置 gitlab 运行ner、docker 引擎、docker 机器、docker 集线器、virtualbox 软件的文档。
3.我在虚拟服务器上安装了Gitlab Runner。
4. 我用 "shell" 类型
注册 运行ner
5. 用这个 .gitlab-ci.yml 文件创建一个项目:
test_variable:
before_script:
- docker info
- docker run --rm hello-world
stage: test
script:
- echo $CI_JOB_STAGE
- ls -la
- tree
- 我启动 CI / CD 管道并确保一切正常。
然后我尝试 运行 这个 docker:
- 安装 docker 引擎。
- 安装 docker 机器(来自 gitlab 的分叉版本)(我尝试了两个版本)
- 我创建了一台新机器。一切都很完美。
现在我正在本地测试它 - 运行 一台 docker,运行 新的 docker 机器,创建新机器并再次 运行 - 一切正常。
- 我注册了一个新的 运行ner,类型为 "docker"。
- 而这个新的 运行ner 不适用于相同的 .gitlab-ci.yml 文件:
Running with gitlab-runner 11.2.0 (11.2.0)
on docker-runner zQ6fuswY
Using Docker executor with image ubuntu ...
Pulling docker image gitlab-runner-helper:11.2.0 ...
ERROR: Failed to create container volume for /var/builds/work/rbushnyakov
Error response from daemon: pull access denied for gitlab-runner-helper,
repository does not exist or may require 'docker login': denied: requested
access to the resource is denied (executor_docker.go:166:1s)
ERROR: Job failed: Error response from daemon: pull access denied for gitlab-runner-helper,
repository does not exist or may require 'docker login': denied: requested access to the
resource is denied (executor_docker.go:166:1s)
我做错了什么,我的错误是什么?
我的/etc/gitlab-runner/config.toml
[[runners]]
name = "simple-runner"
url = "https://git.our.corporate.site/"
token = "XXXXXXXXXXXXX"
executor = "shell"
shell = "bash"
builds_dir = "/var/builds/work/"
cache_dir = "/var/builds/cache/"
[runners.cache]
[[runners]]
name = "docker-runner"
url = "https://git.our.corporate.site/"
token = "XXXXXXXXXXXXXXX"
executor = "docker"
builds_dir = "/var/builds/work/"
cache_dir = "/var/builds/cache/"
[runners.docker]
tls_cert_path = "/root/.docker/machine/machines/default"
tls_verify = false
image = "ubuntu"
privileged = true
disable_cache = false
volumes = ["/var/builds/cache"]
shm_size = 0
[runners.cache]
感谢您的关注,真心希望得到帮助。
我已经解决了这个问题。感谢 this 解决方案。
问题是 - 引用:
...
the reason this happens is that we use Git revision in the
gitlab-runner --version output to pull the correct helper image, and
the official GitLab Runner binaries output a commit SHA and not the
tag:
...
因此,在第一次加载期间,docker 引擎想要获取某些标签,但这些标签丢失了。
所以我下载了 gitlab-runner-helper 版本 11.2.0,它有一个不同的标签,并且
在本地重命名。
关注link,仔细阅读。那里有更详细的描述。
我们已经完全配置并运行完美的企业 gitlab 服务器。现在我尝试在上面使用 CI/CD。
1. 我们的系统管理员在公司网络上给了我一个虚拟服务器,安装了 ubuntu 20.04。
2. 我阅读(并理解)有关安装和配置 gitlab 运行ner、docker 引擎、docker 机器、docker 集线器、virtualbox 软件的文档。
3.我在虚拟服务器上安装了Gitlab Runner。
4. 我用 "shell" 类型
注册 运行ner
5. 用这个 .gitlab-ci.yml 文件创建一个项目:
test_variable:
before_script:
- docker info
- docker run --rm hello-world
stage: test
script:
- echo $CI_JOB_STAGE
- ls -la
- tree
- 我启动 CI / CD 管道并确保一切正常。
然后我尝试 运行 这个 docker: - 安装 docker 引擎。
- 安装 docker 机器(来自 gitlab 的分叉版本)(我尝试了两个版本)
- 我创建了一台新机器。一切都很完美。
现在我正在本地测试它 - 运行 一台 docker,运行 新的 docker 机器,创建新机器并再次 运行 - 一切正常。 - 我注册了一个新的 运行ner,类型为 "docker"。
- 而这个新的 运行ner 不适用于相同的 .gitlab-ci.yml 文件:
Running with gitlab-runner 11.2.0 (11.2.0)
on docker-runner zQ6fuswY
Using Docker executor with image ubuntu ...
Pulling docker image gitlab-runner-helper:11.2.0 ...
ERROR: Failed to create container volume for /var/builds/work/rbushnyakov
Error response from daemon: pull access denied for gitlab-runner-helper,
repository does not exist or may require 'docker login': denied: requested
access to the resource is denied (executor_docker.go:166:1s)
ERROR: Job failed: Error response from daemon: pull access denied for gitlab-runner-helper,
repository does not exist or may require 'docker login': denied: requested access to the
resource is denied (executor_docker.go:166:1s)
我做错了什么,我的错误是什么?
我的/etc/gitlab-runner/config.toml
[[runners]]
name = "simple-runner"
url = "https://git.our.corporate.site/"
token = "XXXXXXXXXXXXX"
executor = "shell"
shell = "bash"
builds_dir = "/var/builds/work/"
cache_dir = "/var/builds/cache/"
[runners.cache]
[[runners]]
name = "docker-runner"
url = "https://git.our.corporate.site/"
token = "XXXXXXXXXXXXXXX"
executor = "docker"
builds_dir = "/var/builds/work/"
cache_dir = "/var/builds/cache/"
[runners.docker]
tls_cert_path = "/root/.docker/machine/machines/default"
tls_verify = false
image = "ubuntu"
privileged = true
disable_cache = false
volumes = ["/var/builds/cache"]
shm_size = 0
[runners.cache]
感谢您的关注,真心希望得到帮助。
我已经解决了这个问题。感谢 this 解决方案。 问题是 - 引用:
... the reason this happens is that we use Git revision in the gitlab-runner --version output to pull the correct helper image, and the official GitLab Runner binaries output a commit SHA and not the tag: ...
因此,在第一次加载期间,docker 引擎想要获取某些标签,但这些标签丢失了。 所以我下载了 gitlab-runner-helper 版本 11.2.0,它有一个不同的标签,并且 在本地重命名。
关注link,仔细阅读。那里有更详细的描述。