Установка панели

Панель ставится одной командой на чистый сервер. Она поднимает Master, Postgres, NATS (для нод) и nginx с сертификатом Let's Encrypt в каталоге /opt/game-panel.

1. Получите команду

Откройте Загрузки, укажите домен панели и e-mail для Let's Encrypt и скопируйте команду из блока Установка на новый сервер. Она выглядит так:

curl -fsSL https://<портал>/dl/<ваш токен>/1.2.3/install.sh | sudo bash -s -- \
  --domain panel.example.com --email ops@example.com \
  --image-url https://<портал>/dl/<ваш токен>/1.2.3/game-master-1.2.3.tar \
  --image-sha256 <контрольная сумма>

В ссылках ваш личный токен: они работают, пока у аккаунта есть действующая лицензия (пробная тоже подходит). Не публикуйте их; если ссылка утекла, нажмите Перевыпустить ссылку на той же странице — старая сразу перестанет работать. Последний стабильный установщик без токена всегда доступен по адресу https://<портал>/install.sh.

2. Запустите на сервере

Выполните команду от root. Установщик:

  1. ставит Docker и плагин compose, если их нет (Debian/Ubuntu);
  2. проверяет, что домен указывает на этот сервер, а порты 80, 443 и 4222 свободны;
  3. скачивает образ панели и сверяет его SHA-256 до загрузки;
  4. создаёт /opt/game-panel со сгенерированными секретами, центром сертификации нод и конфигурацией;
  5. запускает стек и ждёт, пока панель станет доступна;
  6. печатает ссылку для первого входа.

Параметры

  • --domain D — домен панели (обязателен при первой установке).
  • --email E — e-mail для Let's Encrypt (не нужен с --own-cert).
  • --image-url URL / --image-archive FILE / --image REF — образ панели: ссылка на скачивание, локальный архив или образ из Docker-реестра.
  • --image-sha256 HEX — контрольная сумма архива; портал подставляет её сам.
  • --own-cert — свой сертификат вместо Let's Encrypt.
  • --dir PATH — каталог установки, по умолчанию /opt/game-panel.
  • --yes — ничего не спрашивать (вместо вопроса — ошибка); --skip-checks — не проверять DNS и порты.

Сервер без доступа в интернет

В разделе Загрузки скачайте install.sh и архив образа, перенесите оба файла на сервер и запустите:

sudo bash install.sh --domain panel.example.com --email ops@example.com \
  --image-archive ./game-master-1.2.3.tar --image-sha256 <сумма из раздела Загрузки>

Для продления лицензии панели всё равно нужен исходящий HTTPS до этого портала. Для полностью закрытой сети нужен офлайн-файл лицензии — см. Лицензирование.

HTTPS-сертификат

По умолчанию сертификат выпускает Let's Encrypt, обычно через минуту-две после запуска. До этого панель отвечает временным самоподписанным сертификатом, и браузер показывает предупреждение — это нормально. Попытки повторяются каждые 15 минут, продление автоматическое.

Свой сертификат: установите с --own-cert и положите файлы — nginx подхватит их за несколько секунд:

sudo cp fullchain.pem privkey.pem /opt/game-panel/tls/

Свой сертификат продлевается так же — заменой файлов.

3. Сохраните секреты установки

Сразу после установки скопируйте в надёжное место вне сервера:

  • /opt/game-panel/.env — пароли и ключи шифрования;
  • /opt/game-panel/certs/ — центр сертификации нод.

В резервные копии самой панели они не входят. Без них не расшифровать настройки и не подключить обратно ноды. Подробнее — Резервные копии.

Дальше: Первый вход.

Повседневные команды

Из каталога установки:

cd /opt/game-panel
docker compose ps                 # состояние сервисов
docker compose logs -f master     # логи панели
docker compose restart master     # перезапустить панель
docker compose down               # остановить всё (данные сохраняются)
docker compose up -d              # запустить всё

Обновление перезаписывает docker-compose.yml, nginx.conf и nats-server.conf — не правьте их. Свои изменения (порты, лимиты ресурсов, переменные окружения Master) кладите в docker-compose.override.yml, compose подхватывает его сам. Чтобы включить встроенный MinIO, добавьте minio в COMPOSE_PROFILES в .env и выполните docker compose up -d.