mirror of
https://github.com/narrrl/holy-flavor-rater.git
synced 2026-11-03 16:41:27 +01:00
60 lines
1.7 KiB
YAML
60 lines
1.7 KiB
YAML
services:
|
|
# --- Backend Service ---
|
|
backend:
|
|
build:
|
|
context: ./backend
|
|
container_name: holy-backend
|
|
restart: unless-stopped
|
|
networks:
|
|
- narl
|
|
- internal
|
|
env_file:
|
|
- ./.env
|
|
volumes:
|
|
- ./backend:/app
|
|
- ./legacy:/app/legacy
|
|
environment:
|
|
- PYTHONUNBUFFERED=1
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.docker.network=narl"
|
|
# Route /api, /admin, /static and /media traffic to the backend
|
|
- "traefik.http.routers.holy-backend.priority=20"
|
|
- "traefik.http.routers.holy-backend.rule=Host(`holy.narl.io`) && (PathPrefix(`/api`) || PathPrefix(`/admin`) || PathPrefix(`/static`) || PathPrefix(`/media`))"
|
|
- "traefik.http.routers.holy-backend.entrypoints=websecure"
|
|
- "traefik.http.routers.holy-backend.tls.certresolver=https_resolver"
|
|
- "traefik.http.services.holy-backend.loadbalancer.server.port=8000"
|
|
|
|
# --- Frontend Service ---
|
|
frontend:
|
|
build:
|
|
context: ./frontend
|
|
container_name: holy-frontend
|
|
restart: unless-stopped
|
|
networks:
|
|
- narl
|
|
env_file:
|
|
- ./.env
|
|
volumes:
|
|
- ./frontend:/app
|
|
- /app/node_modules
|
|
depends_on:
|
|
- backend
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.docker.network=narl"
|
|
- "traefik.http.routers.holy-frontend.priority=10"
|
|
- "traefik.http.routers.holy-frontend.rule=Host(`holy.narl.io`)"
|
|
- "traefik.http.routers.holy-frontend.entrypoints=websecure"
|
|
- "traefik.http.routers.holy-frontend.tls.certresolver=https_resolver"
|
|
- "traefik.http.services.holy-frontend.loadbalancer.server.port=5173"
|
|
|
|
networks:
|
|
narl:
|
|
external: true
|
|
internal:
|
|
internal: true
|
|
|
|
volumes:
|
|
db_data:
|