services: auth-service: build: context: ./ dockerfile: ./auth-service/Dockerfile ports: - "50051:50051" env_file: - ./auth-service/.env - .env environment: - HEALTH_CHECK_PORT=8080 depends_on: - database-service - consul api-service: build: context: ./ dockerfile: ./api-service/Dockerfile ports: - "8080:8080" - "8081:8081" env_file: - ./api-service/.env - .env depends_on: - auth-service - consul database-service: build: context: ./ dockerfile: ./database-service/Dockerfile ports: - "50052:50052" env_file: - ./database-service/.env - .env depends_on: - db - consul character-service: build: context: ./ dockerfile: ./character-service/Dockerfile ports: - "50053:50053" env_file: - ./character-service/.env - .env depends_on: - auth-service - consul world-service: build: context: ./ dockerfile: ./world-service/Dockerfile ports: - "50054:50054" env_file: - ./world-service/.env - .env depends_on: - auth-service - consul packet-service: build: context: ./ dockerfile: ./packet-service/Dockerfile ports: - "4000:4000" env_file: - ./packet-service/.env - .env depends_on: - auth-service - consul db: image: postgres:17 env_file: - .env ports: - "5432:5432" volumes: - db_data:/var/lib/postgresql/data - ./sql/schema.sql:/docker-entrypoint-initdb.d/schema.sql:ro consul: image: consul:1.15.4 command: agent -dev -client=0.0.0.0 ports: - "8500:8500" volumes: db_data: