mirror of
https://github.com/uprightbass360/AzerothCore-RealmMaster.git
synced 2026-01-18 19:25:45 +00:00
Improve database timeout handling and add local testing setup
- Update database timeout values for better Portainer/NFS compatibility - Add .env-database-local for local testing with reduced resource requirements - Create local data directories and backup script validation - Split compose validation confirms proper service dependency configuration - Increase MySQL health check timeouts: start_period 60s→120s, timeout 10s→15s - Extend database wait times: retries 30→60, sleep 5→10 (total 150s→600s) 🤖 Generated with [Claude Code](https://claude.com/claude-code)
This commit is contained in:
174
.env-core
Normal file
174
.env-core
Normal file
@@ -0,0 +1,174 @@
|
||||
# ==============================================
|
||||
# AZEROTHCORE DOCKER ENVIRONMENT CONFIGURATION
|
||||
# ==============================================
|
||||
# REQUIRED: All values must be set - no defaults in compose
|
||||
|
||||
# ==============================================
|
||||
# DATABASE CREDENTIALS (REQUIRED)
|
||||
# ==============================================
|
||||
MYSQL_ROOT_PASSWORD=azerothcore123
|
||||
|
||||
# Database connection settings
|
||||
MYSQL_HOST=ac-mysql
|
||||
MYSQL_PORT=3306
|
||||
MYSQL_USER=root
|
||||
MYSQL_ROOT_HOST=%
|
||||
|
||||
# Database names
|
||||
DB_AUTH_NAME=acore_auth
|
||||
DB_WORLD_NAME=acore_world
|
||||
DB_CHARACTERS_NAME=acore_characters
|
||||
|
||||
# Database wait settings
|
||||
DB_WAIT_RETRIES=30
|
||||
DB_WAIT_SLEEP=5
|
||||
|
||||
# ==============================================
|
||||
# DOCKER IMAGES (REQUIRED)
|
||||
# ==============================================
|
||||
# AzerothCore images
|
||||
AC_DB_IMPORT_IMAGE=acore/ac-wotlk-db-import:14.0.0-dev
|
||||
AC_AUTHSERVER_IMAGE=acore/ac-wotlk-authserver:14.0.0-dev
|
||||
AC_WORLDSERVER_IMAGE=acore/ac-wotlk-worldserver:14.0.0-dev
|
||||
AC_ELUNA_IMAGE=acore/eluna-ts:master
|
||||
|
||||
# Base images
|
||||
MYSQL_IMAGE=mysql:8.0
|
||||
ALPINE_IMAGE=alpine:latest
|
||||
ALPINE_GIT_IMAGE=alpine/git:latest
|
||||
|
||||
# ==============================================
|
||||
# IMAGE PULL POLICY (REQUIRED)
|
||||
# ==============================================
|
||||
# Control when Docker pulls images
|
||||
# Options: always, never, missing, if_not_present
|
||||
# - always: Always pull the latest image (slower, ensures latest)
|
||||
# - never: Never pull, use only local images (fastest, may fail if image missing)
|
||||
# - missing/if_not_present: Only pull if image doesn't exist locally (recommended)
|
||||
IMAGE_PULL_POLICY=if_not_present
|
||||
|
||||
# ==============================================
|
||||
# DEPLOYMENT OPTIMIZATION (REQUIRED)
|
||||
# ==============================================
|
||||
# Skip client data download if data already exists (speeds up deployment)
|
||||
SKIP_CLIENT_DATA_IF_EXISTS=true
|
||||
|
||||
# Parallel container startup (reduces deployment time)
|
||||
ENABLE_PARALLEL_STARTUP=true
|
||||
|
||||
# ==============================================
|
||||
# MYSQL CONFIGURATION (REQUIRED)
|
||||
# ==============================================
|
||||
# MySQL server settings
|
||||
MYSQL_CHARACTER_SET=utf8mb4
|
||||
MYSQL_COLLATION=utf8mb4_unicode_ci
|
||||
MYSQL_MAX_CONNECTIONS=1000
|
||||
MYSQL_INNODB_BUFFER_POOL_SIZE=256M
|
||||
MYSQL_INNODB_LOG_FILE_SIZE=64M
|
||||
|
||||
# MySQL health check settings
|
||||
MYSQL_HEALTHCHECK_INTERVAL=15s
|
||||
MYSQL_HEALTHCHECK_TIMEOUT=10s
|
||||
MYSQL_HEALTHCHECK_RETRIES=20
|
||||
MYSQL_HEALTHCHECK_START_PERIOD=60s
|
||||
|
||||
# ==============================================
|
||||
# CONTAINER HEALTH CHECKS (REQUIRED)
|
||||
# ==============================================
|
||||
# Auth server health check
|
||||
AUTH_HEALTHCHECK_INTERVAL=30s
|
||||
AUTH_HEALTHCHECK_TIMEOUT=10s
|
||||
AUTH_HEALTHCHECK_RETRIES=3
|
||||
AUTH_HEALTHCHECK_START_PERIOD=60s
|
||||
|
||||
# World server health check
|
||||
WORLD_HEALTHCHECK_INTERVAL=30s
|
||||
WORLD_HEALTHCHECK_TIMEOUT=10s
|
||||
WORLD_HEALTHCHECK_RETRIES=3
|
||||
WORLD_HEALTHCHECK_START_PERIOD=120s
|
||||
|
||||
# ==============================================
|
||||
# NETWORK CONFIGURATION (REQUIRED)
|
||||
# ==============================================
|
||||
# External ports - must be specified
|
||||
DOCKER_DB_EXTERNAL_PORT=64306
|
||||
DOCKER_AUTH_EXTERNAL_PORT=3784
|
||||
DOCKER_WORLD_EXTERNAL_PORT=8215
|
||||
DOCKER_SOAP_EXTERNAL_PORT=7778
|
||||
|
||||
# Internal ports (container side)
|
||||
AUTH_PORT=3724
|
||||
WORLD_PORT=8085
|
||||
SOAP_PORT=7878
|
||||
|
||||
# ==============================================
|
||||
# PATHS (REQUIRED)
|
||||
# ==============================================
|
||||
# Host volume paths (for bind mounts if not using named volumes)
|
||||
HOST_BACKUP_PATH=./backups
|
||||
HOST_BACKUP_SCRIPTS_PATH=./backup-scripts
|
||||
|
||||
# ==============================================
|
||||
# DEPLOYMENT CONFIGURATION (REQUIRED)
|
||||
# ==============================================
|
||||
# Deployment mode: local (development) or portainer (production)
|
||||
DEPLOYMENT_MODE=local
|
||||
|
||||
# Storage configuration for Portainer NFS deployments
|
||||
# Leave empty for local development with named volumes
|
||||
STORAGE_PATH=/nfs/containers/azerothcore
|
||||
|
||||
# ==============================================
|
||||
# CONTAINER NAMES (REQUIRED)
|
||||
# ==============================================
|
||||
# Core service container names
|
||||
CONTAINER_MYSQL_INIT=ac-mysql-init
|
||||
CONTAINER_MYSQL=ac-mysql
|
||||
CONTAINER_DB_INIT=ac-db-init
|
||||
CONTAINER_DB_IMPORT=ac-db-import
|
||||
CONTAINER_AUTHSERVER=ac-authserver
|
||||
CONTAINER_WORLDSERVER=ac-worldserver
|
||||
CONTAINER_CLIENT_DATA=ac-client-data
|
||||
CONTAINER_ELUNA=ac-eluna
|
||||
CONTAINER_MODULES=ac-modules
|
||||
CONTAINER_BACKUP=ac-backup
|
||||
|
||||
# ==============================================
|
||||
# NETWORK SETTINGS (REQUIRED)
|
||||
# ==============================================
|
||||
NETWORK_NAME=azerothcore
|
||||
NETWORK_SUBNET=172.20.0.0/16
|
||||
NETWORK_GATEWAY=172.20.0.1
|
||||
|
||||
# ==============================================
|
||||
# SERVER CONFIGURATION (REQUIRED)
|
||||
# ==============================================
|
||||
# Timezone
|
||||
TZ=UTC
|
||||
|
||||
# ==============================================
|
||||
# BACKUP CONFIGURATION (REQUIRED)
|
||||
# ==============================================
|
||||
# Cron schedule
|
||||
BACKUP_CRON_SCHEDULE=0 3 * * *
|
||||
|
||||
# Retention
|
||||
BACKUP_RETENTION_DAYS=7
|
||||
|
||||
# ==============================================
|
||||
# CUSTOM MODULE SETTINGS
|
||||
# ==============================================
|
||||
# Playerbot settings
|
||||
PLAYERBOT_ENABLED=1
|
||||
PLAYERBOT_MAX_BOTS=40
|
||||
|
||||
# Module Management (1 = enabled, 0 = disabled)
|
||||
MODULE_PLAYERBOTS=1
|
||||
MODULE_AOE_LOOT=0
|
||||
MODULE_LEARN_SPELLS=0
|
||||
MODULE_FIREWORKS=0
|
||||
MODULE_INDIVIDUAL_PROGRESSION=0
|
||||
|
||||
# ==============================================
|
||||
# END OF CONFIGURATION
|
||||
# ==============================================
|
||||
Reference in New Issue
Block a user