Частный реестр Docker, docker push запрещен

Я настраиваю частный реестр, который работает нормально. Докер 1.10. Я выбираю сменить хост и воссоздать сертификат заново. Все работает нормально на моем сервере, но на моем клиентском сервере я не могу поместить изображение в реестр :

unable to ping registry endpoint https://my.customer.private.hostname:5000/v0/ v2 ping attempt failed with error: Get https://my.customer.private.hostname:5000/v2/: Forbidden v1 ping attempt failed with error: Get https://my.customer.private.hostname:5000/v1/_ping: Forbidden

Я не могу найти в Google никого, кто говорил бы о "запрещенном" ответе. Где я могу искать, чтобы понять? Я уже удалил контейнер, изображение, удалил docker, переустановил docker, но все та же ошибка. Единственное, что я не удаляю, - это thinpool, используемый для хранения данных docker (devicemapper).

Существует файл systemd conf для docker :

/etc/systemd/system/docker.service.d/http-proxy.conf

с

[Служба] Окружающая среда="HTTP_PROXY=http://proxy:3128" Environment="NO_PROXY=localhost,127.0.0.0/8"

IP-адрес реестра не был localhost, поэтому мне нужно было добавить хост в переменную NO_PROXY. Я до сих пор не понимаю, почему сработал первый хост. Перезапуск контейнера реестра без https (только http) и использование tcpdump помогают нам решить эту проблему.

Для меня очень странно, что docker пытается подключиться через https к порту 5000, а затем вы сделали curl с http на тот же порт, и это сработало.

Вероятно, вы делаете: docker pull my.customer.private.hostname:5000 xxx/yyy вместо docker pull my.customer.private.hostname xxx/yyy

С уважением

Для моего реестра docker создан сертификат, и сертификат CA выдается каждой установке Docker в /etc/docker/certs.d/myregistry.domain.tld:5000 /ca.crt, поэтому мой реестр небезопасен. Но я постараюсь быть уверенным.

Вы сменили хост, обновили ли вы записи dns?

Да, и curl -k https://my.customer.private.hostname:5000/v2/_catalog дайте мне запись в формате json с моими изображениями docker.

Прежде всего, нам нужно знать, является ли это проблемой с сертификатом. попробуйте опцию --небезопасный-реестр myregistry:5000

Вы выполнили "docker login my.customer.private.hostname:5000`? Я бы предварял это сообщением “docker logout my.customer.private.hostname:5000”, чтобы убедиться, что старый логин не валяется без дела.

Нет, но в моем личном реестре нет логина. Я попробую это сделать.