Завершена настройка домена для дева, теста и прода. Соединение через ssh-туннель

This commit is contained in:
2026-06-16 19:15:54 +03:00
parent 56b5d09a4d
commit b04fbb2e17
14 changed files with 356 additions and 26 deletions
+21 -9
View File
@@ -1,8 +1,8 @@
# ╔═══════════════════════════════════════════════════════════════════════════╗
# ║ Forbidden Stars — единый .env (dev и prod) ║
# ║ Скопируйте в `.env`, заполните секреты. Реальный `.env` в git НЕ идёт. ║
# ║ Переключение dev/prod — одной строкой APP_ENV (ниже). ║
# ╚═══════════════════════════════════════════════════════════════════════════╝
# ═══════════════════════════════════════════════════════════════════════════
# Forbidden Stars — единый .env (dev / test / prod)
# Скопируйте в .env, заполните секреты. Реальный .env в git НЕ идёт.
# Окружение — строкой APP_ENV (ниже); публикация локалки наружу — LOCAL_PUBLIC.
# ═══════════════════════════════════════════════════════════════════════════
# ─── ГЛАВНЫЙ ПЕРЕКЛЮЧАТЕЛЬ ────────────────────────────────────────────────────
# Этот параметр читает ЛАУНЧЕР (run.ps1 / run.sh) и решает, что запускать:
@@ -12,6 +12,16 @@
# Прод-контейнер ИГНОРИРУЕТ это значение и всегда production.
APP_ENV=development
# ─── ПУБЛИКАЦИЯ ЛОКАЛКИ ЧЕРЕЗ ДОМЕН (VPS-туннель) ─────────────────────────────
# Только для dev/test на твоём ПК. local — приложение лишь на localhost; vps —
# лаунчер дополнительно поднимает SSH-туннель на VPS, и dev/test виден снаружи на
# https://forbidden-stars.ru. Прод (Pi) сюда не относится — у него свой autossh-туннель.
LOCAL_PUBLIC=local
# Параметры туннеля (нужны только при LOCAL_PUBLIC=vps):
VPS_TUNNEL_HOST=186.246.51.17
VPS_TUNNEL_USER=tunnel
VPS_TUNNEL_PORT=9001 # порт VPS, который слушает Caddy для forbidden-stars.ru
# ─── АДМИНИСТРАТОР (вход по логину/паролю, отдельно от Telegram) ──────────────
ADMIN_USERNAME=admin
ADMIN_PASSWORD=change-me-admin-password
@@ -19,10 +29,12 @@ ADMIN_BOOTSTRAP_ENABLED=true
# ─── АУТЕНТИФИКАЦИЯ ИГРОКОВ ───────────────────────────────────────────────────
# Методы входа задаёт APP_ENV: dev → Telegram + stub (вход по нику), prod → только
# Telegram. Отдельного переключателя нет. Для Telegram нужны токен и юзернейм бота
# (@BotFather) и /setdomain на ваш HTTPS-домен.
# Telegram. Для Telegram нужны токен и юзернейм бота (@BotFather). /setdomain у
# BotFather укажи на ОБА домена, где открывается виджет: forbiddenstars.ru (prod)
# и forbidden-stars.ru (dev/test).
TELEGRAM_BOT_TOKEN=
TELEGRAM_BOT_USERNAME=
# Внешний адрес (зарезервировано): prod https://forbiddenstars.ru; dev/test https://forbidden-stars.ru.
PUBLIC_BASE_URL=
# ─── БЕЗОПАСНОСТЬ / СЕССИИ ────────────────────────────────────────────────────
@@ -33,8 +45,8 @@ SECRET_KEY=change-me-dev-secret-not-for-production
JWT_ALGORITHM=HS256
JWT_USER_TTL_MINUTES=10080
JWT_ADMIN_TTL_MINUTES=480
# dev/test (локально, по HTTP) → false; production за HTTPS на Pi → true.
COOKIE_SECURE=false
# COOKIE_SECURE задаётся АВТОМАТИЧЕСКИ по окружению (HTTPS-домен ⇒ Secure-cookie):
# dev+localhost → false; dev через VPS, test, prod → true. Вручную задавать НЕ нужно.
COOKIE_DOMAIN=
# ─── БАЗА ДАННЫХ (структура общая, файлы РАЗНЫЕ; выбор по APP_ENV) ────────────