Обзор развертывания MinIO на сервере¶
Предварительные требования¶
Для корректной работы приложения требуются следующие параметры системы:
-
ОС: Linux (с установленным Docker и Python/pip).
-
Домен: Должен быть настроен для использования с шаблоном поддоменов
hostkey.in. -
Порты:
-
443(HTTPS) — внешний доступ через прокси. -
9000— API MinIO. -
9001— консоль управления MinIO.
-
FDQN итоговой панели на домене hostkey.in¶
| Параметр | Значение |
|---|---|
| Префикс | minio |
| Домен | hostkey.in |
| Полный шаблон | minio{Server_ID_from_Invapi}.hostkey.in |
Структура файлов и каталогов¶
Основные директории, используемые в системе:
-
/root/nginx— рабочая директория для конфигурации прокси-сервера Nginx. -
/data/nginx/user_conf.d— директория с пользовательскими конфигурациями Nginx. -
/data/nginx/nginx-certbot.env— файл переменных окружения для Certbot. -
/mnt/data— основное хранилище данных MinIO.
Процесс установки приложения¶
Развертывание выполняется путем запуска контейнера MinIO с последующей настройкой обратного прокси Nginx через Docker Compose для обеспечения работы по HTTPS.
Контейнеры Docker и их запуск¶
MinIO¶
Контейнер предназначен для управления объектным хранилищем.
-
Имя образа:
quay.io/minio/minio -
Порты:
-
9000:9000(API) -
9001:9001(Консоль управления)
-
-
Тома (volumes):
/mnt/data:/data -
Команда запуска:
server /data --console-address ':9001' -
Политика перезапуска:
unless-stopped
Nginx (Certbot Proxy)¶
Контейнер для обеспечения SSL-сертификатов и проксирования трафика.
-
Имя образа:
jonasal/nginx-certbot:latest -
Сеть:
host -
Тома (volumes):
-
nginx_secrets:/etc/letsencrypt -
/data/nginx/user_conf.d:/etc/nginx/user_conf.d
-
-
Переменные окружения:
CERTBOT_EMAIL=hkadm@hostkey.com
-
Политика перезапуска:
unless-stopped
Обновление приложения¶
Обновление выполняется через выполнение команды:
в директории/root/nginx. Настройки прав¶
Для работы сервисов установлены следующие права доступа к директориям:
- Директория
/root/nginx: владелецroot, группаroot, режим0644.
Расположение конфигурационных файлов и данных¶
| Тип данных | Путь в контейнере | Путь на хосте |
|---|---|---|
| Данные MinIO | /data | /mnt/data |
| Конфигурация Nginx | /etc/nginx/user_conf.d | /data/nginx/user_conf.d |
| Сертификаты SSL | /etc/letsencrypt | nginx_secrets (external volume) |
Доступные порты для подключения¶
-
HTTPS (Web UI):
443 -
MinIO API:
9000 -
MinIO Console:
9001