Files
linux-odyssey/docker-compose.yml
T
2026-10-11 19:30:38 +11:00

75 lines
1.7 KiB
YAML

version: '3'
services:
traefik:
image: traefik:v3.6.9
networks:
- players-dev
command:
- '--api.insecure=true'
- '--providers.docker=true'
- '--providers.docker.exposedbydefault=false'
- '--providers.file.directory=/etc/traefik/conf'
- '--providers.file.watch=true'
- '--entrypoints.web.address=:8000'
ports:
- '8000:8000'
- '8080:8080'
extra_hosts:
- 'host.docker.internal:host-gateway'
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- ./traefik/conf:/etc/traefik/conf
db:
image: mongo:6
networks:
- internal
ports:
- '27017:27017'
volumes:
- ./data:/data/db
postgres:
image: postgres:18.6
networks:
- internal
ports:
- 5432:5432
volumes:
- ./postgres-data:/var/lib/postgresql
environment:
POSTGRES_USER: commander
POSTGRES_DB: odyssey-dev
POSTGRES_PASSWORD: mysecretpassword
adminer:
image: adminer
networks:
- internal
ports:
- 18080:8080
base:
image: linuxodyssey/quest-base
networks:
- players-dev
build:
context: .
dockerfile: ./quests/Dockerfile
command: exit 0
extra_hosts:
- 'host.docker.internal:host-gateway'
labels:
- 'traefik.enable=true'
- 'traefik.http.routers.base.rule=PathPrefix(`/terminal/base`)'
- 'traefik.http.middlewares.base-stripprefix.stripprefix.prefixes=/terminal/base'
- 'traefik.http.routers.base.middlewares=base-stripprefix'
- 'traefik.http.routers.base.entrypoints=web'
- 'traefik.http.services.base.loadbalancer.server.port=9090'
networks:
internal:
players-dev:
name: linux-odyssey-players-dev
internal: false