Як встановити Jenkins на Linux

Jenkins – це сервер автоматизації, який допомагає автоматизувати тестування та складання. Його використання, і його використовують понад 6000 проектів з відкритим вихідним кодом. Ось кілька прикладів користувачів Jenkins:

  • Red Hat
  • Facebook
  • Google

Таким чином, Jenkins можна запускати практично на будь-якому обладнанні або операційній системі, що дозволяє користувачам використовувати власну інфраструктуру для налаштування сервера безперервної інтеграції або навіть середовища безперервної доставки.

Ця гнучкість – одна з причин, чому так багато компаній прийняли це програмне забезпечення: їм не потрібно було купувати дороге рішення у третьої сторони, а також їм самим не був потрібний досвід розробки, як це роблять більшість людей, що беруть участь у розробці Jenkins у вільний час . Фактично, за Jenkins взагалі не стоїть компанія; тому це проект із відкритим вихідним кодом.

Однак Jenkins також зазнав справедливої ​​критики. Найважливішим моментом, на який слід звернути увагу є те, що Jenkins насправді може завдати більше шкоди, ніж користі, якщо використовувати її без попереднього обмірковування. Наприклад, одна особливість, яка подобається багатьом користувачам – це те, наскільки легко встановити плагіни для Jenkins – для цього є навіть графічний інтерфейс користувача!

Але це також означає, що існує безліч конфліктуючих плагінів, які можуть створювати проблеми при виконанні декількох завдань на вашому сервері, тому що кожен плагін має свої власні залежності. Вирішення цієї проблеми насправді досить просте: просто прочитайте примітки до випуску будь-яких плагінів, які ви збираєтеся встановити, і виберіть ті, які були оновлені для сумісності з вашою версією Jenkins.

Ще одна проблема, про яку люди часто забувають – це безпека. Знову ж таки, оскільки будь-хто може легко створити плагін Jenkins (давайте навіть не будемо говорити про те, який код вони можуть писати), достатньо всього одного неправильно сконфігурованого або зловмисно створеного плагіна, щоб ризикувати ваш сервер. Два роки тому був експлойт, який міг робити це автоматично, використовуючи тільки функцію центру оновлень.

Але це далеко не всі речі, які можуть піти не так, якщо ви не будете обережні з Jenkins. Ви також повинні убезпечити себе від людей, які можуть захотіти використовувати ваш сервер для власної вигоди, і пам’ятайте, що ваша безпека настільки гарна, наскільки гарні слабкі ланки в ньому.

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

Цей посібник покаже вам кроки по установці Jenkins Server у системі.

Вимоги

Щоб дотримуватися цього посібника, вам знадобляться:

  • Сервер з доступом до Інтернету та порожнім жорстким диском не менше 15 ГБ.
  • Доступ до root-користувача (пароль).

Оновлення системи

Рекомендується розпочати цю установку з оновлення наших репозиторіїв пакетів. Ви можете це зробити, виконавши наступні команди.

# RedHat, Rocky Linux
sudo dnf check-update && sudo dnf update -y
# Ubuntu, Debian
sudo apt update && sudo apt full-upgrade -y

Встановлення Java

Jenkins написаний на Java, тому вам потрібно буде встановити її у вашій системі. Установка JDK (Java Development Kit) є обов’язковою, її рекомендується використовувати з метою розробки. Якщо ви хочете розробити власні плагіни або запустити тести на своїх серверах складання, установка JDK може бути дуже корисною.

У цьому посібнику ми встановимо JDK 11. JDK 11 – це реалізація платформи Java SE 11 з відкритим вихідним кодом. Він містить, серед іншого: середовище виконання OpenJDK (складання 11 + 28) та компілятор (складання 11 + 28).

Пакет JDK 11 за замовчуванням включений до репозиторію , ви можете виконати наступну команду, щоб показати всі пакети java, доступні у вашій системі.

#Rocky Appstream
sudo dnf search java-*-openjdk

1 1

Виконайте наведену нижче команду, щоб встановити JDK 11 у вашій системі.

# Rocky Linux
sudo dnf -y install java-11-openjdk
# RedHat
yum install epel-release # repository that provides 'daemonize'
yum install java-11-openjdk-devel
yum install jenkins
# Ubuntu, Debian
sudo apt -y install openjdk-11-jdk

Після завершення процесу встановлення ви можете запустити наведену нижче команду, щоб переконатися, що Java встановлено успішно.

java -version

2 1

Додавання репозиторію Jenkins

Пакет Jenkins за замовчуванням не включений до репозиторію Rocky Appstream. На щастя, команда розробників Jenkins зробила свій репозиторій загальнодоступним, тому ми можемо використовувати його для нашої установки.

Ви можете додати репозиторій Jenkins, використовуючи такі команди:

# RedHat, Rocky Linux
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
# Ubuntu, Debian
curl -fsSL https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo tee /usr/share/keyrings/jenkins-keyring.asc > /dev/null
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

Тепер запустіть команду нижче, щоб перевірити, чи правильно ви додали репозиторій.

sudo dnf repolist

3

Встановлення Jenkins на Linux

Тепер, коли всі необхідні компоненти встановлені, настав час переходити до самої установки. Виконайте наступну команду, щоб встановити Jenkins.

# Rocky Linux
sudo dnf -y install jenkins
# RedHat
yum install jenkins
# Ubuntu, Debian
sudo apt-get update
sudo apt-get install jenkins

Після завершення інсталяції виконайте наступну команду, щоб запустити службу jenkins.

sudo systemctl start jenkins

Щоб запустити службу jenkins під час завантаження, виконайте наведену нижче команду.

sudo systemctl enable jenkins

Тепер перевіримо його статус, щоб переконатися, що все працює правильно.

sudo systemctl status jenkins.service

4

Доступ та налаштування Jenkins

Тепер, коли ваш сервер Jenkins запущено, ви можете отримати доступ до нього зі свого браузера. Для цього ви можете використовувати наступну URL-адресу.

http://IP-адрес_сервера:8080

Де server_ip – це фактична IP-адреса вашого сервера. Наприклад, якщо IP-адреса вашого сервера 192.168.1.3, ви будете використовувати наступну URL-адресу для доступу:

http://192.168.1.3:8080

Ви отримаєте наступну сторінку, якщо все працює правильно. Ви можете побачити /var/lib/jenkins/secrets/initialAdminPassword у вигляді відкритого тексту, де знаходиться пароль користувача, що використовується для доступу до Jenkins.

Це тимчасовий пароль, створений під час встановлення, але не показаний. Тепер поверніться до терміналу і виконайте команду нижче, щоб отримати пароль.

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

5

Тепер скопіюйте пароль. Поверніться до браузера та вставте пароль у поле пароля адміністратора. Натисніть кнопку Продовжити.

6

Ви потрапите на сторінку плагінів, як показано нижче. Плагіни розширюють Jenkins, додаючи нові функції. Сервер Jenkins має безліч плагінів, доступних за замовчуванням для виконання різних завдань.

На даний момент для нової установки рекомендується вибрати варіант установки плагінів. Ви завжди можете додати додаткові плагіни на більш пізньому етапі з панелі інструментів Jenkins.

7

Як тільки ви натиснете кнопку, почнеться процес установки плагіна. Це може тривати деякий час.

8

Після завершення процесу встановлення плагіна ви потрапите на сторінку налаштування користувача з правами адміністратора. Введіть ім’я користувача та пароль адміністратора, а потім натисніть кнопку «Зберегти та продовжити».

9

На наступній сторінці конфігурації екземпляра ви зможете налаштувати URL-адресу Jenkins. Залиште значення за замовчуванням та натисніть “Зберегти та завершити”.

10

 

Нарешті, натисніть кнопку Почати використовувати Jenkins на останній сторінці.

11

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

Поділіться своєю любов'ю

Залишити відповідь

0 комментариев
Вбудовані Відгуки
Переглянути всі коментарі
0
Ми любимо ваші думки, будь ласка, прокоментуйте.x