КАК ЗАПУСТИТЬ JENKINS В DOCKER КОНТЕЙНЕРЕ



Процессы непрерывной интеграции (Continuous Integration) и доставки (Continuous Deployment) при разработке программного обеспечения на сегодняшний день являются стандартом де-факто как в маленьких, так и больших, современных ИТ компаний. Один из инструментов, который помогает автоматизировать эти процессы – это Jenkins. В этой серии из 5 статей я покажу вам, как быстро и легко запустить Jenkins в Docker контейнере, настроить его интеграцию с GitHub и заставить его деплоить ваш проект в Google App Engine. По сути, я дам вам возможность запускать в отдельном контейнере, выполняющем сборку вашего ПО, команду gcloud, а дальше уже дело за вами.

УСТАНОВКА JENKINS В DOCKER КОНТЕЙНЕРЕ

Первое, что необходимо сделать, это создать отдельный диск, где будет храниться конфигурация Jenkins. Именно его данные необходимо будет бекапить, чтобы всегда иметь возможность восстановить ваш сервис.
$ docker volume create jenkins_home
В официальном репозитории Docker Hub для нас уже есть официальный образ Jenkins, который можно легко развернуть командой:
$ docker run -d --name jenkins \
    -p 80:8080 \
    -p 50000:50000 \
    -v jenkins_home:/var/jenkins_home \
    -v /var/run/docker.sock:/var/run/docker.sock \
    --restart unless-stopped \
    jenkins
Данная команда:
  • запускает сервис Jenkins c именем jenkins
  • делает доступным запущенный сервис на внешнем интерфейсе вашего сервера на порту 80 (основной Web-интерфейс) и 50000 (порт для API доступа)
  • монтирует созданный нами диск jenkins_home к контейнеру по пути /var/jenkins_home
  • пробрасывает docker.sock внутрь Jenkins контейнера (я пытался заставить работать с ним Docker plugin, но из этой затеи ничего не вышло, плагин не обновлялся с 2016 года, можно не использовать эту инструкцию).
  • просит Docker Engine перезапускать контейнер (--restart unless-stopped) каждый раз, когда он останавливается до момента его явной остановкой командой docker stop
После выполнения этой команды запустите команду docker logs -f jenkins, чтобы получить пароль, с которым можно подключиться к Web-интерфейсу и выполнить первоначальную настройку.
Используя браузер подключитесь к вашему Jenkins контейнеру, используя внешний IP-адрес сервера, на котором вы установили Jenkins, и полученный вами из лога контейнера пароль.

Установите плагины по-умолчанию

Создайте для себя отдельного пользователя
Добавить комментарий

Оставить комментарий