Jenkins — это сервер автоматизации с открытым исходным кодом, который позволяет автоматизировать выполнение повторяющихся технических задач в области непрерывной интеграции и предоставления программного обеспечения. Jenkins написан на Java и может устанавливаться из пакетов Ubuntu или с помощью загрузки и запуска архива веб-приложения (web application archive, WAR), который представляет собой набор файлов, составляющих полноценное веб-приложение, готовое для запуска на сервере.
В этом руководстве вы установите Jenkins, добавив его в репозиторий пакетов Debian и воспользовавшись этим репозиторием для установки пакета с помощью apt
.
Для данного обучающего модуля вам потребуется следующее:
Версия 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.
Давайте запустим 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 работает, мы изменим правила нашего брандмауэра, чтобы мы могли получить к нему доступ из браузера для выполнения первоначальной настройки.
По умолчанию 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 и настройки нашего брандмауэра мы можем завершить первоначальную настройку.
Чтобы выполнить настройку вашей установки, откройте 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 **(Продолжить).
На следующем экране отображаются рекомендуемые для установки плагины и предоставляется возможность выбора конкретных плагинов:
Мы воспользуемся опцией Install suggested plugins (Установить рекомендованные плагины), после чего сразу же будет запущен процесс установки:
После завершения установки вам будет предложено настроить первого административного пользователя. Вы можете пропустить этот шаг и продолжить в качестве администратора admin
, используя первоначальный пароль, который мы использовали выше, но мы воспользуемся этой возможностью и создадим пользователя.
Примечание: по умолчанию сервер Jenkins НЕ шифруется, поэтому данные, передаваемые с помощью этой формы, не защищены. Когда вы будете готовы к использованию этой установки, следуйте указаниям руководства Настройка Jenkins с SSL с помощью обратного прокси-сервера Nginx на Ubuntu 18.04. Это позволит защитить учетные данные пользователя и информацию о сборках, передаваемые через веб-интерфейс.
Введите имя и пароль для вашего пользователя:
Вы увидите страницу Instance Configuration (Конфигурация экземпляра), где вы должны будете подтвердить предпочитаемый URL для вашего экземпляра Jenkins. Подтвердите доменное имя вашего сервера или IP-адрес вашего сервера:
После подтверждения соответствующей информации нажмите Save and Finish (Сохранить и завершить). Вы увидите страницу с подтверждением того, что сервер Jenkins готов к работе:
Нажмите Start using Jenkins (Начать использование Jenkins), чтобы открыть панель управления Jenkins:
После этого установку Jenkins можно считать выполненной успешно.
В этом руководстве вы установили Jenkins с помощью пакетов, предоставленных проектом, запустили сервер, открыли брандмауэр и создали пользователя с правами администратора. Сейчас вы можете начать изучение Jenkins.
После более близкого знакомства, если вы будете готовы продолжить использование Jenkins, следуйте указаниям руководства Настройка Jenkins с SSL с помощью обратного прокси сервера Nginx на Ubuntu 18.04 для защиты ваших паролей, а также любой чувствительной системной информации или информации о продукте, которая будет передаваться между вашим компьютером и сервером в текстовом формате.
Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!