Tutorial

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

Server OptimizationUbuntu 20.04

Введение

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

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

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

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

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

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

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

  • wget -q -O - https://pkg.jenkins.io/debian-stable/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 Fri 2020-06-05 21:21:46 UTC; 45s ago Docs: man:systemd-sysv-generator(8) Tasks: 0 (limit: 1137) CGroup: /system.slice/jenkins.service

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

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

Информацию по настройке брандмауэра UFW можно найти в руководстве «Начальная настройка сервера Ubuntu 20.04», в разделе «Шаг 4 — Настройка базового брандмауэра». По умолчанию Jenkins работает на порту 8080. Откроем этот порт с помощью ufw:

  • sudo ufw allow 8080

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

  • sudo ufw allow OpenSSH
  • sudo ufw enable

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

  • sudo ufw status

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

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

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

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

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

Вы должны увидеть экран Unlock 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 20.04».

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

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

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

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

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

После подтверждения соответствующей информации нажмите Save and Finish (Сохранить и завершить). Вы увидите страницу с подтверждением «Jenkins is Ready!»:

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

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

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

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

Заключение

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

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

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

Creative Commons License