Подтвердить что ты не робот

Добавить небезопасный реестр в Docker

У меня есть докер 1.12, работающий на CentOS. Я пытаюсь добавить в него небезопасный реестр, и все, что упоминается в документации, просто не работает. Система использует systemd, поэтому я создал файл /etc/systemd/system/docker.service.d/50-insecure-registry.conf.

$ cat /etc/systemd/system/docker.service.d/50-insecure-registry.conf
[Service]
Environment='DOCKER_OPTS=--insecure-registry="hostname.cloudapp.net:5000"'

После загрузки демона и перезапуска службы докеров, systemd показывает, что существует переменная среды

$ sudo systemctl show docker | grep Env
Environment=DOCKER_OPTS=--insecure-registry="hostname.cloudapp.net:5000"

Но когда я запускаю docker info, я не вижу, что небезопасный реестр добавлен

$ 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

Нажатие изображений на hostaneme.cloudapp.net не выполняется с помощью

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

Есть ли что-то, что можно было бы сделать? Я что-то упускаю?

UPDATE

Устранена проблема, добавив файл /etc/docker/daemon.json со следующим содержимым

{
    "insecure-registries" : [ "hostname.cloudapp.net:5000" ]
}

И затем перезапустите docker

sudo systemctl daemon-reload
sudo systemctl restart docker

После этого работает небезопасный реестр hostname.cloudapp.net:500.

4b9b3361

Ответ 1

(Копирование ответа с вопроса)

Чтобы добавить небезопасный реестр докеров, добавьте файл /etc/docker/daemon.json со следующим содержимым:

{
    "insecure-registries" : [ "hostname.cloudapp.net:5000" ]
}

а затем перезапустите докер.

Ответ 2

Создание файла /etc/docker/daemon.json и добавление приведенного ниже содержимого, а затем перезапуск докера в CentOS 7 решили проблему.

{
    "insecure-registries" : [ "hostname.cloudapp.net:5000" ]
}

Ответ 3

Решение с файлом /etc/docker/daemon.json не работает для меня в Ubuntu.

Мне удалось настроить небезопасные реестры Docker в Ubuntu, предоставив параметры командной строки для демона Docker в /etc/default/docker, например:

# /etc/default/docker    
DOCKER_OPTS="--insecure-registry=a.example.com --insecure-registry=b.example.com"

Таким же образом можно настроить пользовательский каталог для хранения образов и томов докера, DNS-серверов по умолчанию и т.д.

Теперь, после перезапуска демона Docker (после выполнения sudo service docker restart), информация о запуске docker info покажет:

Insecure Registries:
  a.example.com
  b.example.com
  127.0.0.0/8