70 lines
2.0 KiB
YAML
70 lines
2.0 KiB
YAML
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
|
|
|
|
volumes:
|
|
echoes-postgres-data:
|
|
name: echoes-of-the-ashes-postgres-data
|
|
|
|
networks:
|
|
default_docker:
|
|
external: true
|
|
name: default_docker
|
|
traefik:
|
|
external: true
|
|
name: traefik |