Как создать частный репозиторий на моем собственном сервере и выставить этот реестр
Я создал локальное хранилище докеров на моем сервере.
Когда я пытаюсь вставить изображение в него, возникает ошибка.
Мне нужно соединение HTTPS.
Как мне получить HTTPS для моего собственного реестра докеров?
OS: Ubuntu 16.x
Версия докера : 18.06.1-ce, сборка e68fc7a
Уже пробовал:
Добавление следующих строк в /etc/docker/daemon.json,
{
"insecure-registries" : ["myregistrydomain.com:5000"]
}
Ожидаемый: я должен быть в состоянии выдвинуть и вытащить изображения на свой собственный сервер, содержащий реестр докера
2 ответа
Чтобы не подвергать ваш реестр более широкому Интернету, но при этом получать из него изображения, вы можете:
- Запустите локальный реестр на вашем компьютере разработчика, куда вы помещаете изображения
SSH к вашему серверу с обратным туннелем:
ssh -R 5000:localhost:5000 myhost
(прослушать порт 5000 удаленной машины (
-R 5000
) и туннель обратно вlocalhost:5000
на локальной машине)Сейчас на
myhost
вы можетеdocker pull localhost:5000/someImage
, но на самом деле он без проблем подключается через зашифрованный туннель к реестру на вашем компьютере разработчика.
Вы можете иметь локальный незащищенный реестр. Для этого вам нужно добавить исключение в ваш /etc/docker/daemon.json, таким образом
{
"insecure-registries" : ["myregistrydomain.com:5000"]
}
По этой же ссылке показано, как использовать самозаверяющий сертификат.
В конце концов, использование действующего сертификата - это просто шаг вперед, но он может вам не понадобиться для целей разработки.
РЕДАКТИРОВАТЬ:
После этого вам нужно перезапустить своего демона:
service docker restart