I have a docker 1.12 running on CentOS. I am trying to add insecure registry to it and things mentioned in documentation just don't work. The system uses systemd
so I created a /etc/systemd/system/docker.service.d/50-insecure-registry.conf
file.
$ cat /etc/systemd/system/docker.service.d/50-insecure-registry.conf
[Service]
Environment='DOCKER_OPTS=--insecure-registry="hostname.cloudapp.net:5000"'
After loading daemon and restarting docker service, systemd shows that the environment variable is there
$ sudo systemctl show docker | grep Env
Environment=DOCKER_OPTS=--insecure-registry="hostname.cloudapp.net:5000"
But when I run docker info
I don't see that insecure registry added
$ docker info
........
Registry: https://index.docker.io/v1/
WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled
Insecure Registries:
127.0.0.0/8
Pushing images to hostaneme.cloudapp.net
fails with
Pushing application (hostname.cloudapp.net:5000/application:latest)...
The push refers to a repository [hostname.cloudapp.net:5000/mozart_application]
ERROR: Get https://hostname.cloudapp.net:5000/v1/_ping: http: server gave HTTP response to HTTPS client
Is there something that could be done ? Am I missing something ?
UPDATE
Resolved the issue by adding a file /etc/docker/daemon.json
with following content
{
"insecure-registries" : [ "hostname.cloudapp.net:5000" ]
}
And then restart docker
sudo systemctl daemon-reload
sudo systemctl restart docker
After that insecure registry hostname.cloudapp.net:500
works.
The solution with the
/etc/docker/daemon.json
file didn't work for me on Ubuntu.I was able to configure Docker insecure registries on Ubuntu by providing command line options to the Docker daemon in
/etc/default/docker
file, e.g.:The same way can be used to configure custom directory for docker images and volumes storage, default DNS servers, etc..
Now, after the Docker daemon has restarted (after executing
sudo service docker restart
), runningdocker info
will show:For me the solution was to add the registry to here:
/etc/sysconfig/docker-registries
Creating /etc/docker/daemon.json file and adding the below content and then doing a docker restart on CentOS 7 resolved the issue.
(Copying answer from question)
To add an insecure docker registry, add the file
/etc/docker/daemon.json
with the following content:and then restart docker.