Moby: http: ошибка рукопожатия TLS от .. EOF

Созданный на 11 дек. 2015  ·  3Комментарии  ·  Источник: moby/moby

Я хочу создать свой собственный реестр докеров, используя самозаверяющие сертификаты. Я работаю над CentOS7 на AWS EC2. Это шаги, которые я выполнил:

Создание сертификата

mkdir -p certs && openssl req \
  -newkey rsa:4096 -nodes -sha256 -keyout certs/domain.key \
  -x509 -days 365 -out certs/domain.crt

В качестве cname я дал: ec2-xx-xx-xx-xx.compute.amazonaws.com (внешнее имя хоста ec2)
Дайте правильные разрешения:

chcon -Rt svirt_sandbox_file_t /home/centos/certs/

Создание и запуск моего реестра:

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

Теперь я помечаю и нажимаю свое изображение:
docker tag ubuntu ec2-xx-xx-xx-xx.compute.amazonaws.com:5000/ubuntu
и нажав docker push ec2-xx-xx-xx-xx.compute.amazonaws.com:5000/ubuntu

Я получил следующую ошибку:

unable to ping registry endpoint https://ec2-xx-xx-xx-xx.compute.amazonaws.com:5000/v0/
v2 ping attempt failed with error: Get https://ec2-xx-xx-xx-xx.compute.amazonaws.com:5000/v2/: net/http: TLS handshake timeout
 v1 ping attempt failed with error: Get https://ec2-xx-xx-xx-xx.compute.amazonaws.com:5000/v1/_ping: net/http: TLS handshake timeout

И в моих журналах докеров

2015/12/11 12:49:21 http: TLS handshake error from 10.0.x.x:54152: EOF

Самый полезный комментарий

У меня такая же проблема, кто может помочь?

Все 3 Комментарий

Привет!

Пожалуйста, прочтите эту важную информацию о создании задач.

Если вы сообщаете о новой проблеме, убедитесь, что у нас нет уже открытых дубликатов. Вы можете убедиться в этом, выполнив поиск в списке проблем для этого репозитория. Если есть дубликат, пожалуйста, закройте свою проблему и вместо этого добавьте комментарий к существующей проблеме.

Если вы подозреваете, что проблема связана с ошибкой, отредактируйте описание проблемы, включив в нее ИНФОРМАЦИЮ ОТЧЕТА О ОБ ОШИБКЕ, показанную ниже. Если вы не предоставите эту информацию в течение 7 дней, мы не сможем отладить вашу проблему и закроем ее. Однако мы снова откроем его, если вы позже предоставите информацию.

Это автоматический информационный ответ.

Спасибо.

Дополнительные сведения об отчетах о проблемах см. на странице https://github.com/docker/docker/blob/master/CONTRIBUTING.md#reporting-other-issues .


ИНФОРМАЦИЯ ОБ ОШИБКЕ

Используйте приведенные ниже команды для предоставления ключевой информации из вашей среды:

docker version :
docker info :
uname -a :

Укажите дополнительные сведения о среде (AWS, VirtualBox, физическая и т. д.):

Перечислите шаги для воспроизведения проблемы:
1.
2.
3.

Опишите полученные результаты:

Опишите ожидаемые результаты:

Предоставьте дополнительную информацию, которую вы считаете важной:

----------КОНЕЦ ОТЧЕТА ---------

ИНФОРМАЦИЯ

Я вижу ту же проблему.

Воспроизвести:

1) создать самоназначенный сертификат
2) создайте реестр с помощью следующей команды:
docker run -d -p 5000:5000 --restart=always --name registry -v /home/.../data:/var/lib/registry -v /home/.../auth:/auth -e "REGISTRY_AUTH=htpasswd" -e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" -e REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd -v /home/.../certs:/certs -e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/$CERT -e REGISTRY_HTTP_TLS_KEY=/certs/$KEY registry:2

Следуйте: https://docs.docker.com/registry/insecure/ , чтобы докер работал с самоназначаемым сертификатом.

Результат следующий:

time="2016-03-09T19:03:05Z" level=warning msg="Секрет HTTP не предоставлен - генерируется случайный секрет. Это может вызвать проблемы с загрузкой, если за балансировщиком нагрузки находится несколько реестров. Чтобы предоставить общий секрет, заполните http.secret в файле конфигурации или установите переменную среды REGISTRY_HTTP_SECRET». go.version=go1.5.3 instance.id=fe73a5f8-5fcc-4c46-8488-7f1edba79266 версия=v2.3.1
time="2016-03-09T19:03:05Z" level=info msg="redis не настроен" go.version=go1.5.3 instance.id=fe73a5f8-5fcc-4c46-8488-7f1edba79266 version=v2.3.1
time="2016-03-09T19:03:05Z" level=info msg="Начало очистки загрузки через 50 минут" go.version=go1.5.3 instance.id=fe73a5f8-5fcc-4c46-8488-7f1edba79266 version=v2.3.1
time="2016-03-09T19:03:05Z" level=info msg="использование кэша дескрипторов больших двоичных объектов в памяти" go.version=go1.5.3 instance.id=fe73a5f8-5fcc-4c46-8488-7f1edba79266 version=v2.3.1
time="2016-03-09T19:03:05Z" level=info msg="прослушивание [::]:5000, tls" go.version=go1.5.3 instance.id=fe73a5f8-5fcc-4c46-8488-7f1edba79266 версия=v2.3.1
09.03.2016, 19:03:33 http: ошибка рукопожатия TLS от xx.xx.xx.xx:53010: EOF
09.03.2016, 19:03:43 http: ошибка рукопожатия TLS от xx.xx.xx.xx:53011: EOF
09.03.2016, 19:04:00 http: ошибка рукопожатия TLS от xx.xx.xx.xx:53325: tls: первая запись не похожа на рукопожатие TLS
09.03.2016, 19:04:06 http: ошибка рукопожатия TLS от xx.xx.xx.xx:53327: tls: первая запись не похожа на рукопожатие TLS
09.03.2016, 19:04:09 http: ошибка рукопожатия TLS от xx.xx.xx.xx:53326: tls: первая запись не похожа на рукопожатие TLS
09.03.2016, 19:04:13 http: ошибка рукопожатия TLS от xx.xx.xx.xx:53328: tls: первая запись не похожа на рукопожатие TLS
09.03.2016, 19:04:24 http: ошибка рукопожатия TLS от xx.xx.xx.xx:53329: EOF
09.03.2016, 19:04:35 http: ошибка рукопожатия TLS от xx.xx.xx.xx:53333: EOF
09.03.2016, 19:04:35 http: ошибка рукопожатия TLS от xx.xx.xx.xx:53334: EOF

Строки, которые не сообщают об ошибке, — это то место, где я пытаюсь подключиться через веб-браузер.
Я ожидал, что смогу войти в реестр с помощью

вход в докер мой сервер: 5000

но он зависает после ввода учетных данных, журналы докеров сообщают об этом выше

Системная информация:
докер версия
Клиент:
Версия: 1.9.1
Версия API: 1.21
Go версия: go1.4.2
Git коммит: a34a1d5
Построен: пт, 20 ноября, 13:12:04 UTC 2015
ОС/архив: линукс/амд64

Сервер:
Версия: 1.9.1
Версия API: 1.21
Go версия: go1.4.2
Git коммит: a34a1d5
Построен: пт, 20 ноября, 13:12:04 UTC 2015
ОС/архив: линукс/амд64

информация о докере
Контейнеры: 34
Изображения: 230
Версия сервера: 1.9.1
Драйвер хранилища: aufs
Корневой каталог: /var/lib/docker/aufs
Резервная файловая система: extfs
Диры: 298
Dirperm1 Поддерживается: правда
Драйвер выполнения: родной-0.2
Драйвер ведения журнала: json-файл
Версия ядра: 3.19.0-25-универсальная
Операционная система: Ubuntu 14.04.3 LTS
Процессоры: 4
Общая память: 3,665 ГБ
Имя: coheatserver002
ID: 6 OJI:T4AJ :TYV3:UC7E:SKW5:5V4V:74YJ:IY3H:4Q7I:T4EB:3 SJL:NVIQ
ВНИМАНИЕ: нет поддержки предела свопа

uname -а
Linux coheatServer002 3.19.0-25-generic #26~14.04.1-Ubuntu SMP Пт, 24 июля, 21:16:20 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

У меня такая же проблема, кто может помочь?

Была ли эта страница полезной?
0 / 5 - 0 рейтинги