4

Docker executor と docker-in-docker アプローチを使用して GitLab CI/CD をセットアップしようとしていますが、次の問題で立ち往生しています。

私の .gitlab-ci.yml では、プロジェクトの GitLab の統合ドッカー レジストリとの接続を確立しようとしています。

before_script:
   - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY

ただし、パイプラインは次のエラーで終了します。

Error response from daemon: Get https://my.gitlab.server:1234/v2/: x509: certificate signed by unknown authority

レジストリにログインし、gitlab-runner が実行されているマシンから問題なくプッシュ/プルできるので、証明書の問題がホスト マシンにないことがわかります。さらに、自分の証明書をビルド コンテナーにコピーする docker:latest からカスタム Docker イメージ ビルドを作成しようとしました。 .server:1234 -- 成功しませんでした。

証明書をどこに置く必要があるか、または他の方法でこれを解決する方法について何か考えはありますか?

4

2 に答える 2

3

誰かがこの問題に遭遇したとき、「insecure-registry」パラメーターを docker dind サービスに追加して解決しました。しかし、これは単なる回避策であり、修正ではありません。

.gitlab-ci.yml

image: docker

services:
  - name: docker:dind
    command: ["--insecure-registry=gitlab.MYDOMAIN:PORT"]

before_script:
  - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY

stages:
  - build

build:
  stage: build
  script:
    - docker build .......
于 2018-05-24T17:29:47.543 に答える