Обзор развертывания Postiz на сервере¶
Предварительные требования¶
Для корректной работы приложения необходимы следующие условия:
-
Операционная система: Ubuntu.
-
Установленный Docker и Docker Compose.
-
Доступ к интернету для загрузки образов и получения SSL-сертификатов.
-
Настроенный DNS-запрос для доменного имени, на которое будет установлен SSL-сертификат.
FDQN итоговой панели на домене hostkey.in¶
Для доступа к приложению используется следующий шаблон доменного имени:
| Параметр | Значение |
|---|---|
| Префикс | postiz |
| Домен | hostkey.in |
| Полный шаблон | postiz{Server_ID_from_Invapi}.hostkey.in |
Структура файлов и каталогов¶
Основные директории, используемые в системе:
-
/opt/postiz— рабочая директория приложения (содержит файлы конфигурации Docker). -
/root/nginx— директория для управления прокси-сервером. -
/data/nginx/user_conf.d— директория с конфигурациями Nginx и SSL-сертификатами.
Процесс установки приложения¶
Развертывание приложения выполняется в несколько этапов:
-
Подготовка окружения: Установка Docker на сервер.
-
Загрузка исходных файлов: Клонирование репозитория
https://github.com/gitroomhq/postiz-docker-compose.gitв директорию/opt/postiz. -
Конфигурация приложения: Автоматическая замена параметров в файле
docker-compose.yaml, включая настройку URL (MAIN_URL, FRONTEND_URL, NEXT_PUBLIC_BACKEND_URL) на использование доменного имени с протоколом HTTPS. Также устанавливается уникальное имя контейнера. -
Запуск приложения: Инициализация и запуск сервисов через Docker Compose в директории
/opt/postiz. -
Настройка проксирования: Создание конфигурационного файла
compose.ymlв/root/nginxдля запуска Nginx с поддержкой SSL (Certbot) и запуск контейнера прокси-сервера.
Контейнеры Docker и их запуск¶
В системе работают два основных компонента:
Приложение Postiz¶
Контейнер разворачивается на основе файлов из репозитория в /opt/postiz.
-
Образ: используется набор образов, определенных в
docker-compose.yaml(включая основной сервис приложения). -
Имя контейнера:
postiz{Server_ID_from_Invapi}.hostkey.in. -
Сетевое взаимодействие: использует внутренние сети Docker для связи между компонентами.
Прокси-сервер Nginx¶
Контейнер используется для обеспечения работы по HTTPS и автоматического получения сертификатов.
-
Образ:
jonasal/nginx-certbot:latest. -
Режим сети:
host(использует сетевой стек хоста). -
Тома (volumes):
-
nginx_secrets:/etc/letsencrypt— для хранения SSL-сертификатов. -
/data/nginx/user_conf.d:/etc/nginx/user_conf.d— для конфигурационных файлов сайта. -
Политика перезапуска:
unless-stopped.
Инструкция по обновлению приложения¶
Для обновления основного приложения необходимо выполнить следующие действия:
-
Перейти в директорию с файлами приложения:
-
Выполнить команду обновления контейнеров:
Расположение конфигурационных файлов и данных¶
-
Конфигурация Docker Compose приложения:
/opt/postiz/docker-compose.yaml. -
Конфигурация прокси-сервера:
/root/nginx/compose.yml. -
Данные SSL-сертификатов: в томе
nginx_secrets.
Доступные порты для подключения¶
| Порт | Назначение | Протокол |
|---|---|---|
| 443 | Основной доступ к приложению (HTTPS) | TCP |
| 4007 | Внутренний порт приложения (используется внутри сети/хоста) | TCP |