evwiki/docker-compose.yml
2025-05-30 22:19:43 +02:00

59 lines
1.6 KiB
YAML

services:
app:
build:
context: .
dockerfile: Dockerfile.dev
hostname: evwiki.test
volumes:
- .:/app
depends_on:
- database
labels:
- "traefik.enable=true"
- "traefik.http.routers.app.entrypoints=web"
- "traefik.http.routers.app.rule=Host(`evwiki.test`)"
- "traefik.http.services.app.loadbalancer.server.port=3000"
networks:
- proxy
database:
image: pgvector/pgvector:pg17
hostname: database.evwiki.test
environment:
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=postgres
- POSTGRES_DB=evwiki
volumes:
- postgres_evwiki:/var/lib/postgresql/data
labels:
- "traefik.enable=true"
- "traefik.tcp.routers.database.entrypoints=postgres"
- "traefik.tcp.routers.database.rule=HostSNI(`database.evwiki.test`)"
- "traefik.tcp.routers.database.tls=true"
- "traefik.tcp.routers.database.tls.passthrough=true"
- "traefik.tcp.services.database.loadbalancer.server.port=5432"
networks:
- proxy
adminer:
image: adminer
hostname: adminer.evwiki.test
environment:
- ADMINER_DEFAULT_SERVER=database.evwiki.test
- ADMINER_DEFAULT_DB=evwiki
- ADMINER_DESIGN=darkly
- ADMINER_USER=postgres_evwiki
- ADMINER_PASSWORD=postgres_evwiki
labels:
- "traefik.enable=true"
- "traefik.http.routers.adminer.rule=Host(`adminer.evwiki.test`)"
- "traefik.http.services.adminer.loadbalancer.server.port=8080"
networks:
- proxy
networks:
proxy:
external: true
volumes:
postgres_evwiki: