SHA256
125 lines
3.8 KiB
Markdown
125 lines
3.8 KiB
Markdown
# Тестовые серверы SHiNE
|
||
|
||
Этот файл описывает тестовые стенды, которые сейчас фигурируют в проекте.
|
||
|
||
## 1. Исторический `test2`, теперь второй production-сервер
|
||
|
||
- SSH: `player@193.8.215.70`
|
||
- Домен: `server2.shineup.me`
|
||
- IP: `193.8.215.70`
|
||
- Назначение: второй production-контур SHiNE
|
||
|
||
Структура:
|
||
|
||
- каталог SHiNE: `/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`
|
||
|
||
Сервисы:
|
||
|
||
- `shine-server.service`
|
||
- `caddy.service`
|
||
|
||
Deploy:
|
||
|
||
- `./gradlew deployServer`
|
||
- `./gradlew deployServerTest2`
|
||
- `./gradlew deployUI`
|
||
- `./gradlew deployUITest2`
|
||
|
||
Примечания:
|
||
|
||
- этот хост больше не считать test-контуром;
|
||
- исторические имена deploy-задач `deployServerTest2` / `deployUITest2` сохранены, но сам хост считать production;
|
||
- задача `deployUITest2` по умолчанию выкладывает UI на `server2.shineup.me`, а не на `t2.shineup.me`;
|
||
- при описании окружений перечислять его как второй production-сервер.
|
||
|
||
## 2. Отдельный quad-devnet стенд `t1..t4`
|
||
|
||
- VPS: `178.208.90.249`
|
||
- пользователь: `player`
|
||
- назначение: 4 независимых SHiNE-инстанса на Solana `devnet`
|
||
|
||
Домены и логины:
|
||
|
||
- `server_t1` -> `https://t1.shineup.me`
|
||
- `server_t2` -> `https://t2.shineup.me`
|
||
- `server_t3` -> `https://t3.shineup.me`
|
||
- `server_t4` -> `https://t4.shineup.me`
|
||
|
||
Каталоги:
|
||
|
||
- `/home/player/t1/server`
|
||
- `/home/player/t1/UI`
|
||
- `/home/player/t2/server`
|
||
- `/home/player/t2/UI`
|
||
- `/home/player/t3/server`
|
||
- `/home/player/t3/UI`
|
||
- `/home/player/t4/server`
|
||
- `/home/player/t4/UI`
|
||
|
||
Подробная памятка на самом VPS:
|
||
|
||
- `/home/player/Agents.md`
|
||
|
||
Порты и systemd:
|
||
|
||
- `t1` -> `7101` -> `shine-t1.service`
|
||
- `t2` -> `7102` -> `shine-t2.service`
|
||
- `t3` -> `7103` -> `shine-t3.service`
|
||
- `t4` -> `7104` -> `shine-t4.service`
|
||
|
||
Что важно по конфигу каждого инстанса:
|
||
|
||
- отдельный `/home/player/tX/server/application.properties`
|
||
- `server.port=710X`
|
||
- `server.SHiNE.login=server_tX`
|
||
- `db.path=data/shine.sqlite`
|
||
- `solana.cluster=devnet`
|
||
- `solana.rpcUrl=https://api.devnet.solana.com`
|
||
- `server.ui.indexPath=/home/player/tX/UI/index.html`
|
||
- `server.info.url=https://tX.shineup.me`
|
||
|
||
UI каждого инстанса:
|
||
|
||
- живёт в отдельной копии `shine-UI`;
|
||
- использует свой `js/deploy-config.js`;
|
||
- по умолчанию смотрит именно на свой `tX.shineup.me`.
|
||
|
||
Caddy на стенде:
|
||
|
||
- конфиг: `/etc/caddy/Caddyfile`
|
||
- статика: `/home/player/tX/UI`
|
||
- `/ws` проксируется на `127.0.0.1:710X`
|
||
|
||
Operational-нюанс:
|
||
|
||
- при одновременных рестартах возможны `HTTP 429` от `api.devnet.solana.com`;
|
||
- поэтому сервисы `shine-t1..shine-t4` лучше перезапускать по одному, с паузой.
|
||
|
||
## 3. Что проверять первым делом
|
||
|
||
Для любого test-контура полезны такие быстрые проверки:
|
||
|
||
```bash
|
||
curl -I https://server2.shineup.me
|
||
curl -I https://t1.shineup.me
|
||
curl -I https://t2.shineup.me
|
||
curl -I https://t3.shineup.me
|
||
curl -I https://t4.shineup.me
|
||
```
|
||
|
||
Для quad-devnet VPS:
|
||
|
||
```bash
|
||
sudo systemctl --no-pager --full status caddy shine-t1 shine-t2 shine-t3 shine-t4
|
||
```
|
||
|
||
Для второго production-контура:
|
||
|
||
```bash
|
||
sudo systemctl --no-pager --full status shine-server caddy
|
||
```
|