DOCKER_AUTH_CONFIG ignored after upgrade to 16.11
Hi,
I am hosting a dockerized gitlab intance using docker-in-docker runners for CI/CD. This has been working fine until I updated the instance from 16.7 to 16.11. After this point I am unable to check out any image using my private container registry as in this pipeline-snippet:
image: registry.xxx.com:443/siv/firststeps/golang
In 16.8 I used to set DOCKER_AUTH_CONFIG along the lines of:
{ "auths": { "registry.xxx.com:443": { "auth": "SuperSecretKey" } }
Where the Value of the variable was gained through "docker login" (which still works fine).
This lead to behaviour like:
`Running with gitlab-runner 16.7.1 (3eda8038) on docker-stable P3sERp7y, system ID: r_bFouMjlfruAg
Preparing the "docker" executor 00:01 Using Docker executor with image registry.siv.baltic-online.de:443/siv/firststeps/jfgolang ... Authenticating with credentials from $DOCKER_AUTH_CONFIG Pulling docker image registry.xxx.com:443/siv/firststeps/golang ... Using docker image sha256:8953aa4c94a2183cb63e3f437d7966b6f220483f3062c4177b50b107b5d6fb6e for registry.xxx.com:443/siv/firststeps/golang with digest registry.xxx.com:443/siv/firststeps/golang@sha256:125874e1f909afd0e005a155ad95f521c4d4416e564f5eb62979b2f59dba3381 ...`
When I run the same pipeline after updating to 16.11 I get this:
Running with gitlab-runner 16.11.1 (535ced5f) on docker-stable JxQz7qcx, system ID: r_o0rAf1Wvtu7E Preparing the "docker" executor 00:02 Using Docker executor with image registry.xxx.com:443/siv/firststeps/golang ... Pulling docker image registry.xxx.com:443/siv/firststeps/golang ... WARNING: Failed to pull image with policy "always": Error response from daemon: Head "https://registry.xxx.com:443/v2/siv/firststeps/golang/manifests/latest": denied: access forbidden (manager.go:250:0s) ERROR: Job failed: failed to pull image "registry.xxx.com:443/siv/firststeps/golang" with specified policies [always]: Error response from daemon: Head "https://registry.xxx.com:443/v2/siv/firststeps/golang/manifests/latest": denied: access forbidden (manager.go:250:0s)
If I supply the runner with a docker-config file containing credentials everything works as expected:
`Running with gitlab-runner 16.11.1 (535ced5f) on docker-stable JxQz7qcx, system ID: r_o0rAf1Wvtu7E
Preparing the "docker" executor 00:02 Using Docker executor with image registry.xxx.com:443/siv/firststeps/golang ... Authenticating with credentials from /root/.docker/config.json Pulling docker image registry.xxx.com:443/siv/firststeps/golang ... Using docker image sha256:8953aa4c94a2183cb63e3f437d7966b6f220483f3062c4177b50b107b5d6fb6e for registry.xxx.com:443/siv/firststeps/golang with digest registry.xxx.com:443/siv/firststeps/golang@sha256:125874e1f909afd0e005a155ad95f521c4d4416e564f5eb62979b2f59dba3381 ...`
So either I am missing something or DOCKER_AUTH_CONFIG is not utilized in the same way as it was before.