Конвейер Jenkins - не удается получить .Id из 'docker inspect my.docker.repo / centos7' - PullRequest
0 голосов
/ 06 ноября 2018

На нашем сервере Jenkins установлена ​​версия 2.109.

Внутри конвейерного скрипта я пытаюсь выполнить: docker.build ( "my.docker.repo / бэкенд")

Базовый образ для этой сборки определен в Dockerfile с помощью: ОТ my.docker.repo / centos7

Когда я выполняю сборку в Jenkins, изображение создается и помечается, как и ожидалось. Но работа Jenkins терпит неудачу с ошибкой: Не удается получить .Id из 'docker inspect my.docker.repo / centos7'

Впоследствии я могу перейти к серверу Jenkins, и идентификатор действительно отображается в ответе, возвращаемом выполнением 'docker inspect my.docker.repo / centos7'.

У меня также есть второй репозиторий Docker, размещенный на сервере Nexus, который мы используем для разработки. Когда я повторяю описанные выше шаги, заменяя my.docker.repo на my.nexus.repo, задание Jenkins успешно завершается.

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

1 Ответ

0 голосов
/ 02 марта 2019

Вероятно, это ошибка в плагине Jenkins. Пожалуйста, см. этот ответ для получения более подробной информации.

Обходной путь - избегать docker.build() и использовать вместо него команду docker build в оболочке.

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