Jenkins 2 переопределяет plugins.txt

Я перехожу с Jenkins 1.6 на Jenkins 2.0. Я использовал докер для создания и запуска Jenkins.

А чтобы настроить как неизменяемый jenkins, мы копировали все файлы конфигурации xml и использовали plugins.txt для установки всех необходимых плагинов.

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

После того, как я закончу этот мастер, у меня не будет установлен ни один плагин из моего списка plugins.txt, или у меня есть какой-либо пользователь, переданный в папку пользователей.

Есть идеи, как это исправить? в Jenkins 1.6 все работает нормально.




Ответы (1)


Куда вы кладете plugins.txt? Содержимое plugins.txt будет установлено внутри jenkins при создании образа. Поэтому вам нужно пересобрать jenkins:2.0 с помощью собственного dockerfile.

FROM jenkins:2.0
COPY plugins.txt /usr/share/jenkins/plugins.txt
RUN /usr/local/bin/plugins.sh /usr/share/jenkins/plugins.txt

Поместите скрипт plugins.txt в ту же папку. Содержание моего plugins.txt

greenballs:1.15

Затем создайте свой имидж с помощью docker build -t my-jenkins:2.0 .

Я не знаю, как вы переносите свои задания, но я бы подумал, что что-то вроде удаления старого контейнера jenkins, но сохранения постоянного тома докера (или сопоставленной папки на вашем хосте, к которому вы подключаетесь). Но после сборки новых jenkins запустите jenkins, используя опцию -v для привязки к вашему старому тому.

$ docker run -d -v /content-folder:/var/jenkins_home -p 8080:8080 my-jenkins:2.0

Jenkins запустится с уже установленными плагинами + содержимым вашей конфигурации 1.6.

Я смог протестировать только часть с плагинами, и это сработало для меня. После docker build я исполнил docker run -d -p 8080:8080 my-jenkins:2.0. Проверил docker logs этого контейнера, чтобы получить начальный пароль администратора. Не устанавливал никаких плагинов в редакторе и создал задание. После удачного прогона вместо синего шара я увидел зеленый.

person lvthillo    schedule 23.12.2016
comment
Спасибо, мне удалось заставить это работать, и я забыл закрыть решение - person paul; 23.12.2016