# Hysteria Backend - Конфигурация # Скопируйте в .env: cp docker.env.example .env # ВСЕ СЕКРЕТЫ ОБЯЗАТЕЛЬНЫ! Приложение не запустится без них. # ==================== ОБЯЗАТЕЛЬНЫЕ ==================== # Домен панели (без https://) PANEL_DOMAIN=panel.example.com # Хост для Traefik роутера Dokploy (без https://) DOKPLOY_PANEL_HOST=panel.example.com # Порт backend сервиса в Dokploy + порт Traefik loadbalancer DOKPLOY_TRAEFIK_SERVICE_PORT=3000 # Email для Let's Encrypt сертификата ACME_EMAIL=admin@example.com # Ключ шифрования SSH паролей (РОВНО 32 символа! Генерируйте: openssl rand -hex 16) ENCRYPTION_KEY= # Секрет сессий (генерируйте: openssl rand -hex 32) SESSION_SECRET= # MongoDB пароль (генерируйте: openssl rand -hex 16) MONGO_PASSWORD= MONGO_USER=hysteria # ==================== ОПЦИОНАЛЬНО ==================== # Режим TLS. # USE_CADDY=true — backend отдаёт обычный HTTP на PORT (по умолчанию 3000), # а TLS терминирует внешний reverse-proxy (Caddy/Traefik). # Так настроены docker-compose.yml и docker-compose.dokploy.yml. # не задано — backend сам поднимает HTTPS:443 через Greenlock и тянет # сертификат Let's Encrypt (нужен реальный домен и публичные # порты 80/443). # Для локальной разработки по HTTP без домена см. docker-compose.local.yml. # USE_CADDY=true # Secure-cookie для сессии админа. По умолчанию включено. # docker-compose.local.yml выставляет false для локального HTTP. # SESSION_COOKIE_SECURE=true # Порт backend сервиса (по умолчанию: 3000) # PORT=3000 # Redis URL (по умолчанию: redis://redis:6379) # REDIS_URL=redis://redis:6379 # IP whitelist для панели и API (через запятую, пусто = разрешено всем) # Примеры: 127.0.0.1, 192.168.1.0/24 PANEL_IP_WHITELIST= # Интервал синхронизации с нодами (в минутах) SYNC_INTERVAL=2 # Уровень логирования (error, warn, info, debug) # debug - показывает все логи включая отладочные # info - только важные события (по умолчанию) LOG_LEVEL=info # Интерактивная документация API (Scalar UI) по адресу /api/docs # По умолчанию: выключено # API_DOCS_ENABLED=true # Лимит параллельных прямых SSH-подключений (когда пул выключен). # Защита от перегрузки CPU при сетевой нестабильности (issue #70). # По умолчанию: 3. Увеличивать на свой риск — на 1 vCPU больше 3 хэндшейков # одновременно гарантированно сажают панель. # SSH_DIRECT_MAX_CONCURRENT=3 # Секрет для обновления панели из UI (генерируйте: openssl rand -hex 32). # Общий секрет между панелью и sidecar-контейнером updater. Пока он не задан # (минимум 32 символа), обновление из UI недоступно и updater отклоняет все # запросы. Задавать только на docker-compose.yml и docker-compose.hub.yml. # UPDATER_SECRET= # Тег образа панели для docker-compose.hub.yml (по умолчанию: latest). # Перезаписывается автоматически при обновлении/откате из UI. # PANEL_TAG=latest