Я пытаюсь использовать плагин Docker в Jenkins для фиксации контейнера Docker, когда сборка, выполняемая на нем, не выполняется. В настоящее время у меня есть сервер Jenkins с ~ 15 узлами, каждый из которых имеет собственное докерское облако. На всех узлах установлена последняя версия docker-ce. У меня есть сборка, настроенная для запуска на Docker-контейнере. Что я хочу сделать, это зафиксировать контейнер при сбое сборки. Ниже приведены вещи, которые я пробовал:
Добавление задачи после сборки, где я получаю идентификатор контейнера и имя хоста узла, на котором выполняется контейнер. Я тогда SSH в узел и затем фиксирую контейнер.
- Проблема: Невозможно выполнить SSH из контейнера, так как для него требуется пароль, и нет способа добавить узел в список известных хостов контейнера
Установка флажка «Подтвердить контейнер» в общих конфигурациях сборки
- Проблема: возможно, это работает, но я не знаю, куда помещается контейнер. Также это происходит каждый раз, а не только при сбое сборки.
Использование сценария сборки
- Та же проблема, что и при использовании задачи после сборки
Выполнить команду docker (шаг сборки)
- Этот параметр запрашивает идентификатор контейнера, который я не могу узнать, поскольку он новый при каждом запуске сборки.
Пожалуйста, дайте мне знать, если я неправильно понял любой из вышеперечисленных способов! Я все еще новичок в Дженкинс и Докер, поэтому я учусь на ходу. :)