Обзор развертывания Jenkins Marketplace App на сервере¶
Предварительные требования¶
Для корректной работы приложения требуются следующие параметры и компоненты:
-
Операционная система: Ubuntu.
-
Среда выполнения: Java (OpenJDK 21 JRE).
-
Доступные порты:
-
Внутренний порт:
8080(для локального взаимодействия с сервисом). -
Внешний порт:
443(через прокси-сервер для HTTPS доступа).
FDQN итоговой панели на домене hostkey.in¶
Для доступа к приложению используется следующий шаблон доменного имени:
| Параметр | Значение |
|---|---|
| Префикс | jenkins-marketplace-app |
| Домен | hostkey.in |
| Полный шаблон | jenkins-marketplace-app{Server_ID}.hostkey.in |
Процесс установки приложения¶
Процесс развертывания включает в себя установку системных пакетов и настройку веб-прокси:
-
Подготовка системы: Обновление индекса пакетов через
apt. -
Установка Java: Установка пакетов
fontconfigиopenjdk-21-jre-headless. Настройка переменной окруженияJAVA_HOMEв файле/etc/default/jenkinsна основе пути к установленному исполняемому файлу Java. -
Установка Jenkins:
-
Добавление GPG-ключа репозитория Jenkins (LTS версия).
-
Добавление официального репозитория
deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] https://pkg.jenkins.io/debian-stable binary/в список источников. -
Установка пакета
jenkins. -
Настройка веб-прокси:
-
Создание директории
/root/nginx. -
Развертывание контейнера Nginx с поддержкой SSL (Certbot).
-
Настройка конфигурации проксирования, которая перенаправляет трафик с порта
443на локальный порт приложения8080.
Контейнеры Docker и их запуск¶
Для обеспечения работы HTTPS используется следующий контейнер:
| Параметр | Значение |
|---|---|
| Имя образа | jonasal/nginx-certbot:latest |
| Режим перезапуска | unless-stopped |
| Сетевой режим | host |
| Переменные окружения | CERTBOT_EMAIL=hkadm@hostkey.com |
| Тома (volumes) | nginx_secrets:/etc/letsencrypt/data/nginx/user_conf.d:/etc/nginx/user_conf.d |
Инструкция по обновлению приложения¶
Для обновления основного приложения необходимо выполнить следующие действия:
-
Обновить пакеты системы через менеджер пакетов:
-
Перезапустить сервис для применения изменений:
Расположение конфигурационных файлов и данных¶
В системе используются следующие пути для хранения данных и настроек:
-
/etc/default/jenkins— конфигурация параметров запуска Java. -
/root/nginx/compose.yml— файл конфигурации Docker Compose для прокси-сервера. -
/data/nginx/user_conf.d/— директория с конфигурационными файлами веб-сервера Nginx. -
/data/nginx/nginx-certbot.env— файл переменных окружения для контейнера Certbot.
Доступные порты для подключения¶
| Порт | Назначение | Протокол |
|---|---|---|
443 | Внешний доступ к приложению (через HTTPS) | TCP |
8080 | Локальный интерфейс Jenkins | TCP |