プライベートDockerレジストリを使用してgitlabランナーサービスを設定しようとしています。ドキュメントによると、DOCKER_AUTH_CONFIG環境変数を設定し、docker認証資格情報で埋めるだけで十分です。
並行性 = 2 確認間隔 = 0
[session_server]
session_timeout = 1800
[[runners]]
name = "docker-shared-2"
url = "https://gitlab.easybell.de/"
token = "SDRWmUtpfVNb4c4xMicf"
executor = "docker"
environment = ["DOCKER_AUTH_CONFIG={ \"auths\": { \"xxxx\": { \"auth\": \"xxxx=\" } } }"]
[runners.docker]
tls_verify = false
privileged = true
disable_entrypoint_overwrite = false
oom_kill_disable = false
disable_cache = false
volumes = ["/cache"]
shm_size = 0
[runners.cache]
[runners.cache.s3]
[runners.cache.gcs]
この設定では、gitlab ci ジョブは次のエラーで失敗し続けます。
ERROR: Preparation failed: Error response from daemon: Get https://xxx: no basic auth credentials (executor_docker.go:168:0s)
この設定を操作する以外に欠落しているか、必要なものがありますか?
ベストアンサー1
gitlabランチャー設定で変数を設定する代わりに、DOCKER_AUTH_CONFIG
dockerデーモンの変数を設定する必要があります。
/etc/docker/config.json
{
"auths": {
"my.private.registry": {
"auth": "xx=="
}
}
}