Введение

jenkins illustration for: Введение

При наличии повторяющихся технических задач подобрать действительно работающее решение автоматизации не так просто. Сервер автоматизации 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

				
			

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

				
					
[secondary_label 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 разрешен отовсюду:

				
					
[secondary_label 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, на котором будет показано расположение начального пароля:

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

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

				
			

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

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

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

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

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

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

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

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

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

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

Заключение

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

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

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