services: echoes_of_the_ashes_db: image: postgres:15 container_name: echoes_of_the_ashes_db restart: unless-stopped environment: - POSTGRES_USER=${POSTGRES_USER} - POSTGRES_PASSWORD=${POSTGRES_PASSWORD} - POSTGRES_DB=${POSTGRES_DB} volumes: - echoes-postgres-data:/var/lib/postgresql/data networks: - default_docker #ports: # Optional: expose port to host for debugging with a DB client # - "5432:5432" # echoes_of_the_ashes_bot: # build: . # container_name: echoes_of_the_ashes_bot # restart: unless-stopped # env_file: # - .env # volumes: # - ./gamedata:/app/gamedata:rw # - ./images:/app/images:ro # depends_on: # - echoes_of_the_ashes_db # networks: # - default_docker echoes_of_the_ashes_map: build: context: . dockerfile: Dockerfile.map container_name: echoes_of_the_ashes_map restart: unless-stopped env_file: - .env volumes: - ./gamedata:/app/gamedata:rw - ./images:/app/images:rw - /var/run/docker.sock:/var/run/docker.sock:ro ports: - 8080:8080 networks: - default_docker - traefik labels: - traefik.enable=true - traefik.http.routers.echoesoftheash-http.entrypoints=web - traefik.http.routers.echoesoftheash-http.rule=Host(`echoesoftheash.patacuack.net`) - traefik.http.routers.echoesoftheash-http.middlewares=https-redirect@file - traefik.http.routers.echoesoftheash.entrypoints=websecure - traefik.http.routers.echoesoftheash.rule=Host(`echoesoftheash.patacuack.net`) - traefik.http.routers.echoesoftheash.tls=true - traefik.http.routers.echoesoftheash.tls.certResolver=production - traefik.http.services.echoesoftheash.loadbalancer.server.port=8080 echoes_of_the_ashes_pwa: build: context: . dockerfile: Dockerfile.pwa container_name: echoes_of_the_ashes_pwa restart: unless-stopped depends_on: - echoes_of_the_ashes_api networks: - default_docker - traefik labels: - traefik.enable=true - traefik.http.routers.echoesoftheashgame-http.entrypoints=web - traefik.http.routers.echoesoftheashgame-http.rule=Host(`echoesoftheashgame.patacuack.net`) - traefik.http.routers.echoesoftheashgame-http.middlewares=https-redirect@file - traefik.http.routers.echoesoftheashgame.entrypoints=websecure - traefik.http.routers.echoesoftheashgame.rule=Host(`echoesoftheashgame.patacuack.net`) - traefik.http.routers.echoesoftheashgame.tls=true - traefik.http.routers.echoesoftheashgame.tls.certResolver=production - traefik.http.services.echoesoftheashgame.loadbalancer.server.port=80 echoes_of_the_ashes_api: build: context: . dockerfile: Dockerfile.api container_name: echoes_of_the_ashes_api restart: unless-stopped env_file: - .env volumes: - ./gamedata:/app/gamedata:ro - ./images:/app/images:ro depends_on: - echoes_of_the_ashes_db networks: - default_docker volumes: echoes-postgres-data: name: echoes-of-the-ashes-postgres-data networks: default_docker: external: true name: default_docker traefik: external: true name: traefik