Установка Jenkins на Ubuntu 18.04

Введение

Jenkins — это сервер автоматизации с открытым исходным кодом, который позволяет автоматизировать выполнение повторяющихся технических задач в области непрерывной интеграции и предоставления программного обеспечения. Jenkins написан на Java и может устанавливаться из пакетов Ubuntu или с помощью загрузки и запуска архива веб-приложения (web application archive, WAR), который представляет собой набор файлов, составляющих полноценное веб-приложение, готовое для запуска на сервере.

В этом руководстве вы установите Jenkins, добавив его в репозиторий пакетов Debian и воспользовавшись этим репозиторием для установки пакета с помощью apt.

Предварительные требования

Для данного обучающего модуля вам потребуется следующее:

  • Один сервер Ubuntu 18.04 с пользователем без прав root и с привилегиями sudo и брандмауэр, настроенный согласно нашему руководству по первоначальной настройке сервера Ubuntu 18.04. Мы рекомендуем использовать минимум 1 ГБ оперативной памяти. См. статью Выбор подходящего аппаратного обеспечения для основного сервера для получения дополнительной информации по планированию производительности при установке Jenkins.
  • Java 8, установленная в соответствии с руководством по установке конкретных версий OpenJDK на Ubuntu 18.04.

Шаг 1 — Установка Jenkins

Версия Jenkins, содержащаяся в стандартных пакетах Ubuntu, часто отличается от последней доступной версии проекта. Чтобы воспользоваться самыми последними исправлениями и функциями, вы можете использовать пакеты, поддерживаемые проектом, для установки Jenkins.

Во-первых, добавьте ключ репозитория в систему:

  • wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add -

После добавления ключа система должна вернуть OK. Затем добавьте в адрес репозитория пакетов Debian в sources.list сервера:

  • sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'

Когда оба условия будут выполнены, запустите команду update, чтобы apt смог использовать новый репозиторий:

  • sudo apt update

После этого можно перейти к установке Jenkins и его зависимостей:

  • sudo apt install jenkins

Теперь, когда Jenkins и его зависимости готовы, мы запустим сервер Jenkins.

Шаг 2 — Запуск Jenkins

Давайте запустим Jenkins с помощью systemctl:

sudo systemctl start jenkins 

Поскольку systemctl не поддерживает вывод данных на экран, вы можете использовать команду status для проверки того, что Jenkins успешно запущен:

  • sudo systemctl status jenkins

Если все пройдет нормально, начало вывода должно демонстрировать, что служба активна и настроена для запуска при загрузке:

Output● jenkins.service - LSB: Start Jenkins at boot time    Loaded: loaded (/etc/init.d/jenkins; generated)    Active: active (exited) since Mon 2018-07-09 17:22:08 UTC; 6min ago      Docs: man:systemd-sysv-generator(8)     Tasks: 0 (limit: 1153)    CGroup: /system.slice/jenkins.service 

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

Шаг 3 — Открытие брандмауэра

По умолчанию Jenkins использует порт 8080, так что давайте откроем этот порт с помощью ufw:

  • sudo ufw allow 8080

Проверьте состояние ufw, чтобы подтвердить сохранение новых правил:

  • sudo ufw status

Вы увидите, что порт 8080 разрешает принимать трафик из любого места:

OutputStatus: active  To                         Action      From --                         ------      ---- OpenSSH                    ALLOW       Anywhere 8080                       ALLOW       Anywhere OpenSSH (v6)               ALLOW       Anywhere (v6) 8080 (v6)                  ALLOW       Anywhere (v6) 

Примечание: если брандмауэр не запущен, следующие команды будут разрешать использование OpenSSH и активировать брандмауэр:

  • sudo ufw allow OpenSSH
  • sudo ufw enable

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

Шаг 4 — Настройка Jenkins

Чтобы выполнить настройку вашей установки, откройте Jenkins на используемом по умолчанию порте 8080, используя доменное имя вашего сервера или IP-адрес: http://your_server_ip_or_domain:8080

Вы должны увидеть экран *Unlock Jenkins *(Разблокировать Jenkins), который показывает местоположение первоначального пароля:

Экран разблокировки Jenkins

В окне командной строки воспользуйтесь командой cat для вывода пароля:

  • sudo cat /var/lib/jenkins/secrets/initialAdminPassword

Скопируйте 32-символьный буквенно-цифровой пароль из командной строки и вставьте его в поле Administrator password (Пароль администратора), после чего нажмите *Continue *(Продолжить).

На следующем экране отображаются рекомендуемые для установки плагины и предоставляется возможность выбора конкретных плагинов:

Экран персональной настройки Jenkins

Мы воспользуемся опцией Install suggested plugins (Установить рекомендованные плагины), после чего сразу же будет запущен процесс установки:

Экран установки плагинов Jenkins  для начала работы

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

Примечание: по умолчанию сервер Jenkins НЕ шифруется, поэтому данные, передаваемые с помощью этой формы, не защищены. Когда вы будете готовы к использованию этой установки, следуйте указаниям руководства Настройка Jenkins с SSL с помощью обратного прокси-сервера Nginx на Ubuntu 18.04. Это позволит защитить учетные данные пользователя и информацию о сборках, передаваемые через веб-интерфейс.

Экран создания первого пользователя Jenkins с правами администратора

Введите имя и пароль для вашего пользователя:

Создание пользователя Jenkins

Вы увидите страницу Instance Configuration (Конфигурация экземпляра), где вы должны будете подтвердить предпочитаемый URL для вашего экземпляра Jenkins. Подтвердите доменное имя вашего сервера или IP-адрес вашего сервера:

Конфигурация экземпляра Jenkins

После подтверждения соответствующей информации нажмите Save and Finish (Сохранить и завершить). Вы увидите страницу с подтверждением того, что сервер Jenkins готов к работе:

Экран "Jenkins  готов"

Нажмите Start using Jenkins​​​​​​ (Начать использование Jenkins), чтобы открыть панель управления Jenkins:

Приветственный экран Jenkins

После этого установку Jenkins можно считать выполненной успешно.

Заключение

В этом руководстве вы установили Jenkins с помощью пакетов, предоставленных проектом, запустили сервер, открыли брандмауэр и создали пользователя с правами администратора. Сейчас вы можете начать изучение Jenkins.

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