小编Syl*_*ota的帖子

GitLab 预定义 CI/CD 变量 CI_REGISTRY_IMAGE 为空

我正在尝试使用 Kaniko 构建/推送我的 docker 镜像到 GitLab 容器注册表(GitLab 自管理 15.3.0,带有 docker runner): https: //docs.gitlab.com/ee/ci/docker/using_kaniko。 html#building-a-docker-image-with-kaniko

正在执行的命令是

$ /kaniko/executor --context "${CI_PROJECT_DIR}/DSPWeb" --dockerfile "${CI_PROJECT_DIR}/DSPWeb/Dockerfile" --destination "${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA}"

但这会导致此错误:

检查推送权限时出错 - 确保您输入了正确的标签名称,并且您已通过正确的身份验证,然后重试:获取目标标签:必须指定存储库名称

问题似乎是预定义的 CI/CD GitLab 内置变量为空/无法解析。回显变量结果:

$ echo $CI_PROJECT_DIR
/builds/xxx/datashieldingplatform
$ echo $CI_REGISTRY_IMAGE
$ echo $CI_REGISTRY
$ echo $CI_COMMIT_SHA
67de133f333b57f8effed69a497adf256945eb15
Run Code Online (Sandbox Code Playgroud)

CI_PROJECT_DIR 和 CI_COMMIT_SHA 解析得很好。

那么,这可能是一个权限问题吗?

谢谢

gitlab gitlab-ci gitlab-ci-runner kaniko

4
推荐指数
1
解决办法
1万
查看次数

标签 统计

gitlab ×1

gitlab-ci ×1

gitlab-ci-runner ×1

kaniko ×1