version: '3.8' services: db: image: postgres:15-alpine environment: POSTGRES_USER: game_user POSTGRES_PASSWORD: game_password POSTGRES_DB: game_db ports: - "5432:5432" volumes: - pgdata:/var/lib/postgresql/data backend: build: context: . dockerfile: Dockerfile.backend environment: DATABASE_URL: postgres://game_user:game_password@db:5432/game_db depends_on: - db volumes: # Optional: mount local saves just in case we run a script inside - ./.saves:/.saves frontend: build: context: . dockerfile: Dockerfile.frontend ports: - "8080:80" depends_on: - backend volumes: pgdata: