# Production-серверы SHiNE Production-контуров два. В документах и скриптах использовать домены, а не IP: физический VPS можно заменить без изменения deploy-логики. Текущее фактическое состояние на `2026-07-28`: - `shineup.me` и `server2.shineup.me` оба уже переведены на `PostgreSQL 18.4`; - оба production используют локальный Docker-контейнер `shine-postgres`; - оба production работают без `SQLite`; - оба production используют Helius mainnet RPC/WS для Solana users sync и runtime Solana RPC. ## Основной production - Домен: `shineup.me` - SSH: `player@shineup.me` - Логин сервера SHiNE: `shineupme` - Базовый каталог: `/home/player/SHiNE` - Сервер: `/home/player/SHiNE/shine-server/shine-server.jar` - UI: `/home/player/SHiNE/shine-ui` - Данные: `/home/player/SHiNE/shine-server/data/` - Логи: `/home/player/SHiNE/shine-server/logs/app.log` - systemd service: `shine-server.service` - Caddy site: `shineup.me` - WebSocket: `/ws` -> `127.0.0.1:7070` - Solana cluster: `mainnet-beta` - Solana RPC/WS: Helius mainnet - Runtime DB: PostgreSQL в Docker - PostgreSQL container: `shine-postgres` - PostgreSQL image: `postgres:18` - PostgreSQL engine version на `2026-07-28`: `18.4` - PostgreSQL data dir: `/home/player/SHiNE/postgres` - PostgreSQL app DB: `shine_main_db` - PostgreSQL app user: `shine_main` - Web push: отдельный production VAPID key для `shineup.me` - TURN для звонков: `turn1.shineup.me`, `turn2.shineup.me` - SQLite runtime больше не используется Deploy: ```bash bash deploy/scripts/production_shineupme_server.sh bash deploy/scripts/production_shineupme_ui.sh ``` ## Второй production - Домен: `server2.shineup.me` - SSH: `player@server2.shineup.me` - Логин сервера SHiNE: `server2shineupme` - Базовый каталог: `/home/player/SHiNE` - Сервер: `/home/player/SHiNE/shine-server/shine-server.jar` - UI: `/home/player/SHiNE/shine-ui` - Данные: `/home/player/SHiNE/shine-server/data/` - Логи: `/home/player/SHiNE/shine-server/logs/app.log` - systemd service: `shine-server.service` - Caddy site: `server2.shineup.me` - WebSocket: `/ws` -> `127.0.0.1:7070` - Solana cluster: `mainnet-beta` - Solana RPC/WS: Helius mainnet - Runtime DB: PostgreSQL в Docker - PostgreSQL container: `shine-postgres` - PostgreSQL image: `postgres:18` - PostgreSQL engine version на `2026-07-28`: `18.4` - PostgreSQL data dir: `/home/player/SHiNE/postgres` - PostgreSQL app DB: `shine_server2_db` - PostgreSQL app user: `shine_server2` - Web push: отдельный production VAPID key для `server2.shineup.me` - TURN для звонков: `turn1.shineup.me`, `turn3.shineup.me` - SQLite runtime больше не используется Deploy: ```bash bash deploy/scripts/production_server2_server.sh bash deploy/scripts/production_server2_ui.sh ``` ## Обязательное правило backup Перед любым production deploy нужно обновить локальный бэкап в `deploy/backup/archive/`. Production wrappers проверяют наличие `MANIFEST.txt` в `deploy/backup/archive//`. Если свежий бэкап не скопирован, deploy должен быть остановлен. ## Запрещено - Не использовать IP как основной target deploy. - Не возвращать старые deploy-алиасы с названием `test2`. - Не считать `t2.shineup.me` вторым production: это test/devnet.