From 3b557b0009f55387ff74ab16a2aa4783e927bf8d Mon Sep 17 00:00:00 2001 From: Yaroslav Pleshakov Date: Sun, 22 Jun 2025 16:12:41 +0400 Subject: [PATCH] fixed .env.example, added auto-generate rcon_password and other vars --- .env.example | 17 +++++++++-------- docker-compose.yml | 2 +- init.sh | 25 ++++++++++++++++++++----- start.sh | 13 +++++++------ 4 files changed, 37 insertions(+), 20 deletions(-) diff --git a/.env.example b/.env.example index c33e7cb..2ff219c 100644 --- a/.env.example +++ b/.env.example @@ -1,11 +1,12 @@ # Server vars -SERVER_NAME=My CSDM Server -RCON_PASSWORD=changeme -PORT = 27015 -HLTV_PORT = 27020 -VAC = "secure" -SV_LAN = 0 +SERVER_NAME="GO YASOZDAL | CSDM" +PORT=27015 +HLTV_PORT=27020 +VAC="secure" +SV_LAN=0 # Gameplay settings -START_MAP = "de_dust2" -MAX_PLAYERS = 32 +START_MAP="de_dust2" +MAX_PLAYERS=32 + +# RCON_PASSWORD will be appended by init.sh \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml index 39a8262..4d29c6a 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,5 +1,5 @@ services: - csdm_1: + csdm: build: . container_name: csdm ports: diff --git a/init.sh b/init.sh index 5e4a384..86ac802 100644 --- a/init.sh +++ b/init.sh @@ -1,11 +1,26 @@ #!/bin/bash ENV_FILE=".env" +TEMPLATE_FILE=".env.example" +# Генерация пароля +generate_password() { + openssl rand -base64 18 +} + +# Создание .env на основе шаблона if [ -f "$ENV_FILE" ]; then - echo "[INFO] $ENV_FILE already exists. Skipping." + echo "[INFO] $ENV_FILE already exists. Skipping creation." else - echo "[INFO] Creating $ENV_FILE from .env.example" - cp .env.example .env - echo "[OK] Now you can edit .env if needed." -fi + echo "[INFO] Creating $ENV_FILE from $TEMPLATE_FILE..." + + # Копируем шаблон + cp "$TEMPLATE_FILE" "$ENV_FILE" + + # Генерируем и подставляем RCON пароль + RCON_PASSWORD=$(generate_password) + echo "RCON_PASSWORD=$RCON_PASSWORD" >> "$ENV_FILE" + + echo "[OK] .env created with generated RCON_PASSWORD:" + echo "$RCON_PASSWORD" +fi \ No newline at end of file diff --git a/start.sh b/start.sh index 7e34289..6ec2cca 100644 --- a/start.sh +++ b/start.sh @@ -4,9 +4,10 @@ cd /hlds ./hlds_run \ -game cstrike \ - +maxplayers ${MAXPLAYERS:-16} \ - +map ${MAP:-de_dust2} \ - +sv_lan 0 \ - +rcon_password ${RCON_PASSWORD:-changeme} \ - -port ${PORT:-27015} \ - -${VAC:-insecure} \ No newline at end of file + -console \ + -port "$PORT" \ + +map "$MAP" \ + +maxplayers "$MAX_PLAYERS" \ + +sv_lan "$SV_LAN" \ + +rcon_password "$RCON_PASSWORD" \ + -${VAC:+-VAC} \ No newline at end of file