Невозможно войти в личный реестр докеров от Jenkins - PullRequest
0 голосов
/ 29 декабря 2018

Я пытаюсь использовать Jenkins для создания и отправки образов Docker в личный реестр.Однако при попытке ввода команды docker login я получаю эту ошибку:

http: server gave HTTP response to HTTPS client

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

Jenkins настроен на кластер Kubernetes, и я пытаюсь автоматизировать развертывание приложения в кластере.

1 Ответ

0 голосов
/ 29 декабря 2018

Это не имеет ничего общего с конвейером Jenkins CI или Kubernetes.Дженкинс не сможет выдвигать ваши образы до тех пор, пока настройка не будет выполнена, выполнив любой из следующих шагов

У вас есть два варианта здесь

1) Настройте ваш докер-клиент для использования безопасного реестра через HTTPS.Это будет включать в себя настройку самозаверяющих сертификатов или получение сертификатов в вашем местном центре сертификации.

2) Второе решение - использовать реестр через незашифрованное соединение HTTP.Так что если вы работаете в докере на kubernetes.Вам нужно будет настроить файл daemon.json в /etc/docker/daemon.json.

PS: Этот файл может не существовать.Вам нужно будет его создать.

Затем добавьте содержимое ниже.Убедитесь, что вы изменили URL-адрес в соответствии с вашим реестром докера

{
  "insecure-registries" : ["myregistrydomain.com:5000"]
}

Затем перезапустите докер, используя systemctl restart docker или etc/init.d/docker restart в зависимости от версии linux distro, установленной на вашем кластере

Позвольте мнезнать, если у вас есть какие-либо вопросы

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...