Перейти к основному содержимому

Требования

Исходный код

Панель — xray-panel/backend · нода — xray-panel/node · страница подписки — xray-panel/subscription-page

Сервер панели​

РесурсМинимумКомментарий
CPU2 ядра
RAM4 ГБна тестовом стенде работает и на 3,8 ГБ
Диск20 ГБбаза растёт вместе с историей трафика
ОСLinux с Docker и Docker Compose

PostgreSQL и Valkey поднимаются контейнерами — ставить их отдельно не нужно. Дополнительно понадобятся домен и TLS-сертификат: без обратного прокси с HTTPS панель не запустится (см. Обратный прокси).

Сервер ноды​

РесурсМинимум
CPU1 ядро
RAM1 ГБ
Диск1 ГБ
Dockerобязателен

Порты:

  • 2222 (NODE_PORT) — управление нодой. Должен быть доступен с сервера панели. Открывать его всему интернету не нужно: достаточно правила firewall на IP панели.
  • порты прокси — задаются конфигурацией Xray (inbound). Открыты клиентам.
  • --network host в контейнере ноды обязателен: Xray должен слушать порты самостоятельно, а проброс портов ломает определение реального IP клиента.

Домены​

ДоменОбязателенНазначение
panel.example.comдапанель и API
sub.example.comнетстраница подписки

Значения попадают в .env:

PANEL_DOMAIN=https://panel.example.com
FRONT_END_DOMAIN=https://panel.example.com
SUB_PUBLIC_DOMAIN=panel.example.com/api/sub
Примечание

SUB_PUBLIC_DOMAIN указывается без https:// и без слэша на конце: это значение подставляется в заголовок profile-web-page-url и в ссылки, которые получает клиент.

Совместимость​

  • Миграции базы применяются автоматически при старте контейнера.
  • При переезде с Remnawave база совместима: см. Переезд с Remnawave.