Add Essence 520 minimal DB, configs, and login/game Docker profile.

This commit is contained in:
test
2026-05-18 12:54:47 +03:00
parent a4a3a2aa09
commit 6fdbc9b103
21 changed files with 438 additions and 172 deletions
+18 -8
View File
@@ -50,8 +50,8 @@ read_env_val() {
# --- Шаг 0: приветствие ---
step_header "Шаг 0 — Обзор"
echo "Проект: Lineage 2 Essence 542 (Samurai Crow), окружение в Docker."
echo удет поднят PostgreSQL 17; игровой сервис — по профилю placeholder (заглушка), пока нет своего образа."
echo "Проект: Lineage 2 Essence, клиент protocol 520, PostgreSQL 17."
echo Д: login + game (минимум для входа). Login/Game JAR — профиль l2 (server/login, server/game)."
if ! ask_yes_no "Продолжить?" "y"; then
info "Выход."
exit 0
@@ -161,6 +161,7 @@ fi
step_header "Шаг 5 — Запуск PostgreSQL 17"
if ask_yes_no "Поднять только PostgreSQL (рекомендуется)?" "y"; then
chmod +x "$SCRIPT_DIR"/docker/initdb/*.sh 2>/dev/null || true
chmod +x "$SCRIPT_DIR"/scripts/*.sh 2>/dev/null || true
docker compose up -d postgres
info "Ожидание готовности PostgreSQL (pg_isready)..."
EV_USER="$(read_env_val POSTGRES_USER)"
@@ -174,11 +175,17 @@ if ask_yes_no "Поднять только PostgreSQL (рекомендуетс
docker compose ps
fi
# --- Шаг 6: заглушка L2 ---
step_header "Шаг 6 — Игровой контейнер (заглушка)"
warn "Сервис l2-server в compose помечен profile 'placeholder'. Замените образ/команду под Samurai Crow."
if ask_yes_no "Запустить контейнер-заглушку l2-server (для проверки сети к БД)?" "n"; then
docker compose --profile placeholder up -d l2-server
# --- Шаг 6: конфиг и Login/Game ---
step_header "Шаг 6 — Конфиг Essence 520"
if [[ -f "$SCRIPT_DIR/scripts/sync-config-password.sh" ]]; then
if ask_yes_no "Подставить пароль БД из .env в config/login и config/game?" "y"; then
bash "$SCRIPT_DIR/scripts/sync-config-password.sh"
fi
fi
step_header "Шаг 7 — Login / Game (Docker profile l2)"
warn "Положите LoginServer.jar и GameServer.jar в server/login и server/game."
if ask_yes_no "Запустить контейнеры login + game (profile l2)?" "n"; then
docker compose --profile l2 up -d login game
docker compose ps
fi
@@ -189,8 +196,11 @@ EV_DB="$(read_env_val POSTGRES_DB)"
EV_PORT="$(read_env_val POSTGRES_PORT)"
info "Строка подключения с хоста Ubuntu: postgresql://${EV_USER}:***@127.0.0.1:${EV_PORT}/${EV_DB}"
info "Из контейнеров в этой compose-сети: хост postgres, порт 5432."
info "Тест-аккаунты: admin/admin и test/test."
info "Клиент: protocol 520, логин 127.0.0.1:2106, мир 127.0.0.1:7777."
echo ""
info "Полезные команды:"
echo " docker compose logs -f postgres"
echo " docker compose --profile l2 up -d login game"
echo " ./scripts/apply-essence-schema.sh # если БД уже была без новых таблиц"
echo " docker compose down"
echo " docker compose --profile placeholder down"