Перейти к содержанию

Обзор развертывания Dokku на сервере

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

Для корректной работы приложения необходимы следующие условия:

  • Операционная система: Ubuntu.

  • Права доступа: права суперпользователя (root) для выполнения установки пакетов и настройки системных файлов.

  • Доменное имя: наличие настроенного домена в зоне hostkey.in.

FQDN итоговой панели на домене hostkey.in

| Параметр | Значение | | Префикс | dokku | | Домен | hostkey.in | | Полный шаблон | dokku{Server_ID_from_Invapi}.hostkey.in |

Процесс установки приложения

Процесс развертывания включает в себя несколько этапов:

  1. Настройка системного окружения:

  2. В файл /etc/hosts добавляется запись, связывающая localhost и текущее имя хоста сервера для обеспечения корректной работы установщика.

  3. Установка Dokku:

  4. Загружается установочный скрипт bootstrap.sh версии v0.34.8.

  5. Выполняется запуск скрипта установки: DOKKU_TAG=v0.34.8 bash /tmp/bootstrap.sh.

  6. Конфигурация домена:

  7. Устанавливается глобальный домен для Dokku на основе шаблона dokku{Server_ID_from_Invapi}.hostkey.in.

  8. Установка зависимостей:

  9. Выполняется команда dokku plugin:install-dependencies --core для подготовки необходимых компонентов системы.

  10. Настройка проксирования и SSL:

  11. Создается директория /root/nginx.

  12. Развертывается контейнер для управления сертификатами через Docker Compose.

Контейнеры Docker и их запуск

Для обеспечения работы веб-сервера и автоматического получения SSL-сертификатов используется следующий контейнер:

Параметр Значение
Имя образа jonasal/nginx-certbot:latest
Сетевой режим host
Политика перезапуска unless-stopped
Переменные окружения CERTBOT_EMAIL=hkadm@hostkey.com
Тома (volumes) nginx_secrets:/etc/letsencrypt
/data/nginx/user_conf.d:/etc/nginx/user_conf.d

Контейнер запускается из директории /root/nginx с использованием файла конфигурации compose.yml.

Инструкция по обновлению приложения

Для обновления Dokku необходимо выполнить следующие действия:

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

  2. Для обновления компонентов Docker (nginx-certbot) необходимо перейти в директорию /root/nginx и выполнить команды:

    docker compose pull && docker compose up -d
    

Расположение конфигурационных файлов и данных

Тип данных Путь к расположению
Конфигурация Nginx (пользовательские) /data/nginx/user_conf.d
Данные сертификатов SSL Том nginx_secrets
Файл окружения Docker /data/nginx/nginx-certbot.env
Рабочая директория прокси /root/nginx

Доступные порты для подключения

  • Порт 443 (HTTPS) — основной порт для доступа к приложениям через защищенное соединение.
question_mark
Я могу вам чем-то помочь?
question_mark
ИИ Помощник ×