2016-01-09 3 views
5

Я настраиваю реестр домена, как описано здесь:Настройка реестра Docker с Letsencrypt сертификатом

https://docs.docker.com/registry/deploying/

Я создал сертификат docker.mydomain.com и начал докер используя свою команду мой сервер:

docker run -d -p 5000:5000 --restart=always --name registry \ 
    -v `pwd`/certs:/certs \ 
    -e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/domain.crt \ 
    -e REGISTRY_HTTP_TLS_KEY=/certs/domain.key \ 
    registry:2 

Я начал докер и указал на сертификаты я получил с помощью letsencrypt (https://letsencrypt.org/).

Теперь, когда я просматриваю https://docker.mydomain.com:5000/v2/, я получу страницу с «{}» с зеленой блокировкой (успешный запрос на безопасную страницу).

Но когда я пытаюсь сделать docker login docker.mydomain.com:5000 с другим сервером я вижу ошибку в докер реестра:

TLS handshake error from xxx.xxx.xxx.xxx:51773: remote error: bad certificate 

Я пробовал несколько различных вариации в настройке сертификатов и нечестную ошибку, как:

remote error: unknown certificate authority 

и

Что мне не хватает?

ответ

4

Docker швы не поддерживает SNI: https://github.com/docker/docker/issues/9969

Update: Docker должны теперь поддерживать SNI.

Это означает, что при подключении к вашему серверу во время транзакции tls клиент-докер не указывает имя домена, поэтому ваш сервер показывает сертификат по умолчанию.

Решение может заключаться в том, чтобы изменить сертификат по умолчанию на ваш сервер на один действительный для домена докеров.

Этот сайт работает только в браузерах с поддержкой SNI.

Чтобы проверить, работает ли ваш (суб) домен с клиентами, не поддерживающими SNI, вы можете использовать ssllabs.com/ssltest: Если вы НЕ ДОЛЖНЫ видеть сообщение, «этот сайт работает только в браузерах с поддержкой SNI». он будет работать.

+0

Мой сервер работает на ssl на www.mydomain.com, поэтому мне нужно указать этот сертификат, а затем установить докер на другой порт, например www.mydomain.com:5000? – Oli

+0

Это должно сработать. можете ли вы это подтвердить? – Tom

+0

Получил ли он работу сейчас, но, согласно вашей ссылке и комментариям, субдомены также должны работать? Во всяком случае спасибо за ответ, я могу продолжить сейчас. – Oli

 Смежные вопросы

  • Нет связанных вопросов^_^