Установка и настройка Jenkins на Ubuntu, Windows, CentOS

Илья Ушаков
Илья Ушаков
Технический писатель
12 октября 2023 г.
211
8 минут чтения
Средний рейтинг статьи: 5

Jenkins – это система с открытым исходным кодом для автоматизированного тестирования, сборки и развертывания программного обеспечения. 

Image12

Изображение: rutube.ru

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

  • Непрерывная интеграция (CI, Continuous Integration)

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

  • Непрерывная доставка (CD, Continuous Delivery)

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

  • Автоматизация тестирования

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

  • Отчетность и мониторинг

Jenkins предоставляет множество плагинов для генерации отчетов о сборках, тестировании и других метриках проекта. Это помогает командам разработки и менеджменту отслеживать прогресс и качество проекта.

В настоящей инструкции мы расскажем об установке и настройке Jenkins на Ubuntu, Windows и CentOS.

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

Перед началом установки Jenkins на выбранную ОС необходимо подготовить окружение. Вам понадобится:

  • Сервер или виртуальная машина с выбранной ОС. Важно, чтобы ваша машина была доступна по сети и имела статический IP-адрес.
  • Java Development Kit (JDK), так как Jenkins работает на платформе Java. Убедитесь, что на сервере или виртуальной машине установлена подходящая версия JDK. Рекомендуется JDK 8 или выше. Выполнить установку можно с официального сайта Oracle.

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

  • Пользователь с правами администратора.

Установка Jenkins

После выполнения требований из прошлой главы ваша машина подготовлена к установке Jenkins. Данный процесс имеет свои особенности в зависимости от выбранной ОС. Именно поэтому мы индивидуально разберем установку рассматриваемого сервиса для Windows, Ubuntu и CentOS в отдельных подглавах.

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

Windows

Первая ОС, на которую будет установлен рассматриваемый сервис, – Windows 11. 

  1. Чтобы установить Jenkins на Windows, перейдем на официальный сайт компании-разработчика и скачаем файл-установщик из списка для выбранной ОС.

Image11

  1. После окончания загрузки файла (jenkins.msi) запустим его для начала установки.
  2. В открывшемся окне установщика нажимаем кнопку «Next» и указываем путь, куда будет установлен сервис. Мы оставим все по умолчанию и перейдем к следующему шагу.
  3. Далее мастер установки предложит два варианта запуска службы:
    • Запуск от имени LocalSystem;
    • Запуск от имени локального или доменного пользователя.

В нашей инструкции мы выберем первый вариант. 

Image5

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

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

Image13

Зеленая галочка сигнализирует о том, что порт свободен и его можно использовать.

  1. Далее необходимо указать путь к ранее установленному JDK и нажать кнопку «Next».

Image2

  1. На заключительном этапе система предлагает пользователю установить дополнительные компоненты. Мы оставляем все по умолчанию и нажимаем кнопку «Next».
  2. И, наконец, кликаем по кнопке «Install» и дожидаемся окончания загрузки.
  3. Как только установка закончится, нажимаем кнопку «Finish».

Jenkins успешно установлен на Windows. Теперь вы можете перейти к главе с его настройкой.

Если пользователь решит перезапустить службу от локального пользователя, то ему необходимо открыть окно «Выполнить» (Win + R) и ввести в строку:

services.msc

В открывшемся окне в списке служб нужно найти Jenkins, а после нажать на него правой кнопкой мыши и выбрать «Свойства» из предложенных действий.

Image10

Далее необходимо перейти на вкладку «Вход в систему» и выбрать из двух предложенных вариантов последний, который называется «С учетной записью». Чтобы добавить пользователя, нажимаем на кнопку «Обзор…» и вводим его имя в самую нижнюю строку. После этого нажимаем на кнопку «Проверить имена». Если пользователь найден, то кликаем на «OK» и вводим его пароль в соответствующие формы.

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

Ubuntu

Следующей операционной системой для установки рассматриваемого сервиса в рамках нашей инструкции будет Ubuntu 22.04. 

Напоминаем, что в вашей системе должна быть установлена Java. Без нее Jenkins не будет работать. 

  1. Чтобы установить Jenkins на Ubuntu, необходимо в первую очередь получить и добавить ключ GPG в систему. Для этого вводим в терминал:
curl -fsSL https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key | sudo tee \
  /usr/share/keyrings/jenkins-keyring.asc > /dev/null

Эта команда использует curl для загрузки ключа GPG с веб-сайта https://pkg.jenkins.io и sudo tee для импорта его в систему. Этот ключ будет использоваться для проверки подлинности источников пакетов.

  1. Далее добавим адрес официального репозитория Jenkins в список пакетов apt в Ubuntu:
echo deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] \
  https://pkg.jenkins.io/debian-stable binary/ | sudo tee \
  /etc/apt/sources.list.d/jenkins.list > /dev/null
  1. После добавления репозитория обновим список пакетов:
sudo apt update
  1. И, наконец, установим рассматриваемый сервис в систему:
sudo apt install jenkins
  1. Как только терминал сообщит об окончании установки Jenkins, запустим его:
sudo systemctl start jenkins

Проверить статус работы сервиса можно с помощью команды:

sudo service jenkins status

Как видно по картинке ниже, служба успешно запущена.

Image3

  1. Перед тем, как мы перейдем к настройке установленного сервиса, необходимо также настроить брандмауэр. Для начала разрешим входящие соединения через SSH:
sudo ufw allow OpenSSH

Далее запустим брандмауэр:

sudo ufw enable

Теперь откроем порт 8080, так как Jenkins использует именно его по умолчанию:

sudo ufw allow 8080

Теперь проверим, что внесенные изменения применились для брандмауэра:

sudo ufw status

Если в строке с портом 8080 в поле Action установлено значение ALLOW, а в поле FromAnywhere, значит внесенные изменения вступили в силу.

Image4

На этом процесс установки Jenkins на Ubuntu 22.04 окончен. Можно переходить к его настройке.

CentOS

Наконец, опишем пошаговую инструкции для установки Jenkins на CentOS. Она не сильно отличается от установки на Ubuntu, но имеет свои особенности.

  1. Чтобы установить Jenkins на CentOS 7, в первую очередь, загрузим файл репозитория и добавим его в jenkins.repo:
sudo wget -O /etc/yum.repos.d/jenkins.repo \
    https://pkg.jenkins.io/redhat-stable/jenkins.repo
  1. Далее импортируем ключ GPG для проверки подлинности пакетов Jenkins:
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.key
  1. Теперь обновим все доступные пакеты yum:
sudo yum upgrade
  1. Как только все пакеты будут обновлены, можно начинать установку сервиса:
sudo yum install jenkins
  1. После установки Jenkins настроим автозапуск службы при загрузке системы:
sudo systemctl enable jenkins

Далее запустим службу:

sudo systemctl start jenkins

Чтобы проверить текущий статус службы, вводим в терминал:

sudo systemctl status jenkins

Как видно по картинке ниже, служба успешно запущена.

Image9

  1. И, наконец, настроим брандмауэр системы. Для этого откроем порт 8080:
sudo firewall-cmd --permanent --zone=public --add-port=8080/tcp

После изменения правил перезагрузим брандмауэр:

sudo firewall-cmd --reload

На этом установка сервиса окончена. Теперь можно переходить к его настройке.

Настройка Jenkins

После завершения установки Jenkins на Ubuntu, Windows или CentOS, необходимо выполнить его базовую настройку.

  1. В первую очередь перейдем по адресу http://localhost:8080 (для сервера: http://ip_адрес_сервера:8080), чтобы открыть веб-интерфейс установленного сервиса.
  2. Как только страница загрузится, пользователю будет предложено разблокировать Jenkins. Для этого необходимо ввести в единственную доступную строку пароль, который хранится по адресу, продемонстрированному на экране.

Image1

На картинке выше изображен пример для Windows 11. Для CentOS и Ubuntu адрес до пароля будет другим.

Как только пароль будет введен, нажимаем в правом нижнем углу кнопку «Continue».

  1. Далее пользователю будет предложено установить плагины, которые расширяют доступный функционал системы. Это можно сделать двумя способами:
    • Установить рекомендуемые плагины;
    • Самостоятельно выбрать плагины для установки;

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

Image8

Если у вас не скачиваются какие-либо из плагинов, то попробуйте переустановить Jenkins, используя другую версию JDK.

  1. По окончании установки плагинов, система предложит пользователю ввести данные для пользователя-администратора. После заполнения всех полей нажимаем кнопку «Save and Continue».

Image6

  1. Далее пользователю будет предложено настроить URL-адрес для Jenkins. Мы оставим предложенный вариант. При необходимости его можно будет поменять на другой в любой момент в настройках сервиса. 
  2. Сервис успешно настроен. Теперь нажимаем кнопку «Start using Jenkins» и ожидаем загрузки его стартовой страницы.

Как видно по картинке ниже, Jenkins готов к работе, а все стартовые плагины успешно установлены.

Image7

Зарегистрируйтесь и начните пользоваться
сервисами Timeweb Cloud прямо сейчас

15 лет опыта
Сосредоточьтесь на своей работе: об остальном позаботимся мы
165 000 клиентов
Нам доверяют частные лица и компании, от небольших фирм до корпораций
Поддержка 24/7
100+ специалистов поддержки, готовых помочь в чате, тикете и по телефону