我有此设置:
具有GitLab注册中心设置的项目A及其中的图片
没有GitLab注册表的项目B,我要在其中使用图像 项目A的注册表。
在项目B中,我有这个.gitlab-ci.yml
image: registry.gitlab.com/patrykkrawczyk/backend-mock-ci-image:latest
stages:
- install
install:
stage: install
script:
- npm i
此外,对于CI变量中的项目B,我设置了DOCKER_AUTH_CONFIG
不受保护和屏蔽的变量:
{
"auths": {
"registry.gitlab.com": {
"auth": "xxx"
}
}
}
xxx
是我的用户名和具有所有权限的个人访问令牌的base64格式。
但是,当我工作时会发生这种情况:
Running with gitlab-runner 12.0.0-rc1 (58d8360f)
on docker-auto-scale 0277ea0f
Using Docker executor with image registry.gitlab.com/patrykkrawczyk/backend-mock-ci-image:latest ...
Pulling docker image registry.gitlab.com/patrykkrawczyk/backend-mock-ci-image:latest ...
ERROR: Preparation failed: Error response from daemon: Get https://registry.gitlab.com/v2/patrykkrawczyk/backend-mock-ci-image/manifests/latest: unauthorized: HTTP Basic: Access denied (executor_docker.go:175:0s)
发生了什么事?我可以从终端成功完成docker login
并提取图像。