Spaces:
Running
Running
services: | |
proxy: | |
ports: | |
- "80:80" | |
- "8090:8080" | |
command: | |
# Enable Docker in Traefik, so that it reads labels from Docker services | |
- --providers.docker | |
# Add a constraint to only use services with the label for this stack | |
# from the env var TRAEFIK_TAG | |
- --providers.docker.constraints=Label(`traefik.constraint-label-stack`, `${TRAEFIK_TAG?Variable not set}`) | |
# Do not expose all Docker services, only the ones explicitly exposed | |
- --providers.docker.exposedbydefault=false | |
# Disable Docker Swarm mode for local development | |
# - --providers.docker.swarmmode | |
# Enable the access log, with HTTP requests | |
- --accesslog | |
# Enable the Traefik log, for configurations and errors | |
- --log | |
# Enable the Dashboard and API | |
- --api | |
# Enable the Dashboard and API in insecure mode for local development | |
- --api.insecure=true | |
labels: | |
- traefik.enable=true | |
- traefik.http.routers.${STACK_NAME?Variable not set}-traefik-public-http.rule=Host(`${DOMAIN?Variable not set}`) | |
- traefik.http.services.${STACK_NAME?Variable not set}-traefik-public.loadbalancer.server.port=80 | |
result_backend: | |
ports: | |
- "6379:6379" | |
pgadmin: | |
ports: | |
- "5050:5050" | |
flower: | |
ports: | |
- "5555:5555" | |
backend: | |
labels: | |
- traefik.enable=true | |
- traefik.constraint-label-stack=${TRAEFIK_TAG?Variable not set} | |
- traefik.http.routers.${STACK_NAME?Variable not set}-backend-http.rule=PathPrefix(`/api/v1`) || PathPrefix(`/docs`) || PathPrefix(`/health`) | |
- traefik.http.services.${STACK_NAME?Variable not set}-backend.loadbalancer.server.port=7860 | |
frontend: | |
labels: | |
- traefik.enable=true | |
- traefik.constraint-label-stack=${TRAEFIK_TAG?Variable not set} | |
- traefik.http.routers.${STACK_NAME?Variable not set}-frontend-http.rule=PathPrefix(`/`) | |
- traefik.http.services.${STACK_NAME?Variable not set}-frontend.loadbalancer.server.port=80 | |
celeryworker: | |
labels: | |
- traefik.enable=true | |
- traefik.constraint-label-stack=${TRAEFIK_TAG?Variable not set} | |
- traefik.http.routers.${STACK_NAME?Variable not set}-celeryworker-http.rule=PathPrefix(`/api/v1`) || PathPrefix(`/docs`) || PathPrefix(`/health`) | |
- traefik.http.services.${STACK_NAME?Variable not set}-celeryworker.loadbalancer.server.port=7860 | |
networks: | |
traefik-public: | |
# For local dev, don't expect an external Traefik network | |
external: false | |