I've set up a Gitlab registry with self-signed certificate. After that I had to convince docker app to trust my CA, I did this by putting CA.crt into
But you have to convince docker executor and dind service in Gitlab Runner too, I've done this by passing cert through volumes in
volumes = ["/cache", "/certs/client", "path/to/cert/ca.crt:/etc/docker/registry.gitlab.yourdomain:5000/ca.crt"]
See the problem? Gitlab Runner uses old volume specification, so
:5000 part will break it. I know about existence of
pre_clone_script, so that you can map your cert into some folder and then move it. But that will not solve the dind service problem -
pre_clone_script will only be executed in 'main' container.