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

Компоненты системы

Репозитории​

КомпонентРепозиторийОбраз
Панель (API + веб-интерфейс)xray-panel/backendghcr.io/xray-panel/backend
Нодаxray-panel/nodeghcr.io/xray-panel/node
Страница подпискиxray-panel/subscription-pageghcr.io/xray-panel/subscription-page
Развёртываниеxray-panel/deploycompose-файлы и nginx-конфиги

Фронтенд панели собирается в образ бэкенда (frontend-dist внутри контейнера), поэтому отдельный контейнер для интерфейса не нужен.

Панель​

  • HTTP API и веб-интерфейс на APP_PORT (по умолчанию 3000, наружу — только через обратный прокси).
  • PostgreSQL — основное хранилище. Контейнер xpanel-db.
  • Valkey (совместим с Redis) — очереди, кэш, pub/sub. Контейнер xpanel-redis.
  • Метрики Prometheus на METRICS_PORT (по умолчанию 3001), закрыты basic auth из METRICS_USER / METRICS_PASS.

Панель — единственный компонент, который хранит персональные данные.

Нода​

Нода не имеет базы данных и не подключается к панели сама. Панель обращается к ней по NODE_PORT (по умолчанию 2222) с mutual TLS и JWT. Отсюда важное следствие: NODE_PORT должен быть доступен с сервера панели, а не из браузера администратора.

Что нода хранит и куда обращается:

  • на диск пользовательские данные не пишутся — только логи Xray в /var/log/xray (ограничены 10 МБ, без архивов);
  • в памяти держится набор UUID клиентов для контроля изменений конфигурации;
  • исходящих соединений к панели нет — только входящие;
  • единственный исходящий запрос с пользовательскими данными — webhook torrent-blocker, и только если он включён в плагине.

Страница подписки​

Отдельный контейнер, который читает данные из панели по API-токену и отдаёт конечному пользователю оформленный список подключений. Работает на APP_PORT (по умолчанию 3010), наружу — отдельный поддомен с HTTPS.

Имена переменных REMNAWAVE_PANEL_URL и REMNAWAVE_API_TOKEN сохранены для совместимости: так страница подписки работает и со старой панелью.

Порты​

ПортКомпонентДоступ
3000панельтолько 127.0.0.1, наружу через nginx
3001метрики панелитолько 127.0.0.1
3010страница подпискитолько 127.0.0.1, наружу через nginx
2222нодадоступен с сервера панели
произвольныепрокси Xrayоткрыты клиентам

Лицензия и атрибуция​

XLADA распространяется под AGPL-3.0-only и является производной работой от Remnawave. §13 AGPL требует, чтобы пользователи сервиса могли получить исходный код: убедитесь, что ссылка на репозитории организации доступна вашим пользователям.