| .. | ||
| servers | ||
| agent-bot-coder-local-systemd.md | ||
| README.md | ||
Деплой SHiNE (шаблон)
Этот раздел хранит актуальные инструкции по деплою.
Базовый сервер
- SSH:
player@shineup.me - Домен:
shineup.me - Базовый путь:
/home/player
Для всех рабочих инструкций и скриптов использовать доменное имя shineup.me, а не фиксированный IP:
- актуальный IP должен браться через DNS-резолв на момент подключения;
- ручное дублирование IP в документации и deploy-скриптах не поддерживать.
Локальные команды
- Деплой сервера:
./gradlew deployServer - Деплой UI:
./gradlew deployUI - Локальный запуск:
./gradlew startLocal
UI-деплой и Caddy (обязательно)
- Целевая директория UI-деплоя:
/home/player/SHiNE/shine-ui. Caddyfileна сервере должен смотреть в ту же директорию черезroot * /home/player/SHiNE/shine-ui.- В
deploy_shine-PWA.shдобавлена проверка: скрипт ищет блокshineup.me { ... }(или значениеEXPECTED_CADDY_SITE) и проверяетrootвнутри этого блока. - Если
rootвнутри целевого блока не совпадает, деплой прерывается с ошибкой. - Для ручного обхода проверки (только осознанно):
ALLOW_CADDY_MISMATCH=1 ./gradlew deployUI. - При необходимости можно явно переопределить путь деплоя:
REMOTE_UI_DIR=/нужный/путь ./gradlew deployUIEXPECTED_CADDY_UI_ROOT=/нужный/путь ./gradlew deployUIEXPECTED_CADDY_SITE=example.com ./gradlew deployUI
Временные тестовые сайты Solana tickets
- Для HTML UI программы
shine_paymentsиспользуется отдельный временный тестовый сайт. - Основной каталог публикации:
/home/player/sites/test-solana-tickets.shineup.me
- Рабочие домены:
https://test-solana-tickets.shineup.mehttps://test-solana-tickets.shiningpeople.ru
- Назначение:
- ручная проверка сценариев покупки билетов;
- проверка DAO-инструментов и лимитов менеджеров;
- проверка ручного добавления билетов и
step_payout.
- Эти сайты не считать основным UI SHiNE; это отдельная тестовая публикация под Solana-часть.
Важно для локального UI (history-router / Ctrl+F5)
- Локальный UI обязательно поднимать только через
./gradlew startLocal. - Эта задача запускает
scripts/local_spa_server.py, который делает SPA fallback: любой неизвестный путь (/m/...,/channel/...) возвращаетindex.html. - Это обязательно для корректной работы
Ctrl+F5на внутренних роутов без404. - Рабочий URL выводится задачей в консоль в формате:
http://localhost:<WEB_PORT>/?localWsPort=<WS_PORT>.
Обязательные правила
- Перед серверным деплоем проверить локально.
- При нестандартном деплое (другой хост, другая структура, ручные шаги) обязательно уточнить у пользователя, нужно ли обновить этот шаблон.
- Если деплой-процесс изменился, этот файл и файлы в
servers/обновлять в том же коммите.