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

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

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

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

  • Операционная система: Debian (поддерживаются версии Bullseye, Bookworm, Trixie).

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

  • Сетевые параметры: доступ к репозиториям Proxmox VE и наличие работающего интернет-соединения для получения SSL-сертификатов.

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

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

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

Структура файлов и каталогов

В процессе развертывания создаются следующие директории и файлы:

  • /root/nginx/ — рабочая директория для Docker Compose конфигурации Nginx.

  • /data/nginx/user_conf.d/ — директория для пользовательских конфигурационных файлов Nginx (включая настройки проксирования).

  • /data/nginx/letsencrypt/.well-known/acme-challenge/ — директория для проверки владения доменом при получении SSL-сертификатов.

  • /data/nginx/ — хранилище конфигурационных файлов и переменных окружения для Nginx.

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

Установка выполняется путем модификации текущей ОС Debian в полноценный гипервизор Proxmox VE:

  1. Обновление системных пакетов APT.

  2. Добавление официальных репозиториев Proxmox VE (no-subscription).

  3. Установка ядра Proxmox (pve-kernel или proxmox-default-kernel в зависимости от версии Debian).

  4. Удаление стандартного ядра Debian для предотвращения конфликтов загрузки.

  5. Установка пакета proxmox-ve, а также вспомогательных сервисов (postfix, open-iscsi).

  6. Настройка автоматического обновления сертификатов через Docker-контейнер Nginx с использованием Certbot.

Права доступа и безопасность

  • Использование os-prober удалено для повышения безопасности загрузчика.

  • Конфигурационные файлы в /data/nginx/user_conf.d/ управляются системой автоматизации.

  • Для работы Docker используется специализированный сервис с параметром Delegate=yes, что позволяет контейнерам корректно использовать cgroups.

Базы данных

В данной конфигурации базы данных не развертываются; приложение использует системные ресурсы сервера для управления виртуализацией.

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

Для обеспечения работы веб-интерфейса через защищенное соединение (HTTPS) используется контейнер Nginx с интегрированным Certbot.

Контейнер: nginx-nginx-1

  • Имя образа: jonasal/nginx-certbot:latest

  • Сетевой режим: host

  • Тома (volumes):

    • nginx_secrets:/etc/letsencrypt (внешний том с сертификатами)

    • /data/nginx/user_conf.d:/etc/nginx/user_conf.d (пользовательские конфиги)

    • /data/nginx/letsencrypt:/var/www/letsencrypt (для ACME-вызовов)

  • Переменные окружения:

    • CERTBOT_EMAIL=hkadm@hostkey.com
  • Файл переменных: /data/nginx/nginx-certbot.env (включает параметр RENEWAL_INTERVAL=8d)

  • Политика перезапуска: unless-stopped

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

Обновление выполняется через стандартные механизмы управления пакетами системы и Docker:

  • Для системных компонентов: выполнение команд обновления репозиториев и пакетов.

  • Для веб-прокси: обновление контейнеров командой docker compose pull && docker compose up -d в директории /root/nginx.

Настройки прав

  • Директория /root/nginx имеет права 0755 (владелец root).

  • Файлы конфигурации и переменные окружения имеют права 0644 (владелец root).

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

  • Конфигурация Nginx: /data/nginx/user_conf.d/{prefix}{server_id}.hostkey.in.conf

  • Переменные окружения Certbot: /data/nginx/nginx-certbot.env

  • Docker Compose файл: /root/nginx/compose.yml

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

Порт Протокол Назначение
443 HTTPS Внешний доступ к веб-интерфейсу Proxmox через прокси
8006 HTTPS Внутренний порт управления Proxmox (локально)
question_mark
Я могу вам чем-то помочь?
question_mark
ИИ Помощник ×