services: maple2-mysql: image: mysql:8.0 restart: unless-stopped container_name: maple2-db environment: MYSQL_ROOT_PASSWORD: ${MAPLE2_DB_PASSWORD:-maplestory} volumes: - maple2_mysql:/var/lib/mysql ports: - "3307:3306" healthcheck: test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-p${MAPLE2_DB_PASSWORD:-maplestory}"] interval: 10s timeout: 5s retries: 10 maple2-file-ingest: container_name: maple2-file-ingest image: mcr.microsoft.com/dotnet/sdk:8.0 working_dir: /app/Maple2.File.Ingest entrypoint: ["dotnet", "run"] depends_on: maple2-mysql: condition: service_healthy env_file: - ../servers/maple2/.env environment: DB_IP: maple2-mysql MS2_DATA_FOLDER: /ClientData volumes: - ../servers/maple2:/app - ${MAPLE2_DATA_FOLDER:-../servers/maple2/client-data/Data}:/ClientData - maple2_dotnet_tools:/root/.dotnet/tools profiles: - ingest maple2-world: build: context: ../servers/maple2 dockerfile: ./Maple2.Server.World/Dockerfile container_name: maple2-world image: maple2/world command: dotnet Maple2.Server.World.dll restart: unless-stopped depends_on: maple2-mysql: condition: service_healthy ports: - "21001:21001" env_file: - ../servers/maple2/.env environment: DB_IP: maple2-mysql maple2-login: build: context: ../servers/maple2 dockerfile: ./Maple2.Server.Login/Dockerfile container_name: maple2-login image: maple2/login command: dotnet Maple2.Server.Login.dll restart: unless-stopped depends_on: maple2-mysql: condition: service_healthy maple2-world: condition: service_started ports: - "20001:20001" env_file: - ../servers/maple2/.env environment: DB_IP: maple2-mysql GRPC_WORLD_IP: maple2-world maple2-web: build: context: ../servers/maple2 dockerfile: ./Maple2.Server.Web/Dockerfile container_name: maple2-web image: maple2/web command: dotnet Maple2.Server.Web.dll restart: unless-stopped depends_on: maple2-mysql: condition: service_healthy ports: - "4000:4000" env_file: - ../servers/maple2/.env environment: DB_IP: maple2-mysql maple2-game-ch0: build: context: ../servers/maple2 dockerfile: ./Maple2.Server.Game/Dockerfile image: maple2/game restart: unless-stopped depends_on: maple2-mysql: condition: service_healthy maple2-world: condition: service_started ports: - "20002:20002" - "21002:21002" env_file: - ../servers/maple2/.env environment: DB_IP: maple2-mysql GRPC_GAME_IP: maple2-game-ch0 GRPC_WORLD_IP: maple2-world INSTANCED_CONTENT: "true" volumes: maple2_mysql: maple2_dotnet_tools: