В локальный докер вход в систему успешно, но с другого компьютера я получаю сообщение об ошибке от daemon: x509: сертификат подписан неизвестным органом - PullRequest
0 голосов
/ 05 ноября 2018

Я пытаюсь развернуть реестр на моем сервере для управления нашими образами. Я создал его с аутентификацией TLS.

Когда я запускаю команду docker login -u username [registry_domain]:[port] в localhost, авторизация успешна.

Когда я запускаю ту же команду с другого компьютера, я получаю:

Error response from daemon: Get [registry_domain]:[port] x509: certificate signed by unknown authority

Я добавил файл /etc/docker/daemon.json со следующей строкой, но это только решило проблему для localhost

{ "insecure-registries": ["registry:8443"] }

При проверке журналов реестра я вижу ошибку:

 http: TLS handshake error from [remoteComputerIp]: remote error: tls: bad certificate

Кто-нибудь сталкивался с такой ситуацией? Или, может быть, может указать мне правильное направление? Не могу найти решение для этого

Ответы [ 2 ]

0 голосов
/ 06 ноября 2018

Нашли решение.

Чтобы удаленные машины могли войти в мой реестр, мне пришлось скопировать client.crt, сгенерированный при создании реестра, на компьютер по умолчанию, с которого я подключался. Это потому, что я сам подписывал сертификаты.

Вы можете войти в нее по ssh, используя docker-machine ssh [name of the machine] (в моем случае имя было "default")

Вы копируете сертификат на /etc/docker/certs.d/<registry-domain>:<port>/ca.crt

Не нужно ничего перезагружать. Как только он заработает, вы можете легко проверить его, используя команду docker login -u username <registry-domain>:<port>

0 голосов
/ 05 ноября 2018

Попробуйте восстановить сертификаты:

docker-machine regenerate-certs machine-name

От: https://forums.docker.com/t/docker-private-registry-x509-certificate-signed-by-unknown-authority/21262/3

...