[英]Gitlab Docker login on wrong registry
我為 gitlab 配置了一個 docker runner,它工作正常,默認容器是 docker:stable 容器。 在 Gitlab 中,我嘗試將該容器用於 CI 作業,如下所示。
variables:
GIT_SUBMODULE_STRATEGY: recursive
GIT_STRATEGY: clone
stages:
- build
build:
stage: build
script:
- docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN $CI_REGISTRY
- docker pull $CI_REGISTRY_IMAGE:latest || true
- docker build --cache-from=$CI_REGISTRY_IMAGE:latest -t $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA -t $CI_REGISTRY_IMAGE:latest .
- docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA
- docker push $CI_REGISTRY_IMAGE:latest
tags:
- docker
有一個錯誤指出:
$ docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN $CI_REGISTRY 警告! 通過 CLI 使用 --password 是不安全的。 使用 --password-stdin。 連接時出錯:發布http://docker:2375/v1.40/auth : dial tcp: lookup docker on 192.168.24.10:53: 服務器行為異常
似乎 CI_REGISTRY 變量設置不正確,因為我在同一台服務器上運行了一個私有注冊表。
確保變量在 GitLab 設置中沒有受到保護或屏蔽。
我有一個類似的問題。 就我而言,我沒有使用自己的 gitlab 運行。 經過大量閱讀,我發現跑步者需要使用--privileged=true
選項運行。 然后我終於意識到“Group Runners”並沒有設置那個標志。 通過在 gitlab 的 ci/cd 設置中禁用“Group Runners”並僅啟用“Shared Runners”,問題得到了解決。 希望這可以幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.