services: backend: build: ./backend container_name: crypto-bot-backend restart: unless-stopped environment: - KRAKEN_API_KEY=${KRAKEN_API_KEY} - KRAKEN_SECRET=${KRAKEN_SECRET} - CRYPTOPANIC_API_KEY=${CRYPTOPANIC_API_KEY} - REDIS_URL=redis://redis:6379 volumes: - ./data:/app/data depends_on: - redis labels: - "traefik.enable=true" - "traefik.http.routers.crypto-api.rule=Host(`crypto-api.${DOMAIN}`)" - "traefik.http.routers.crypto-api.entrypoints=websecure" - "traefik.http.routers.crypto-api.tls=true" - "traefik.http.services.crypto-api.loadbalancer.server.port=8000" - "traefik.http.routers.crypto-api.middlewares=authentik@docker" frontend: build: ./frontend container_name: crypto-bot-frontend restart: unless-stopped depends_on: - backend labels: - "traefik.enable=true" - "traefik.http.routers.crypto-dash.rule=Host(`crypto.${DOMAIN}`)" - "traefik.http.routers.crypto-dash.entrypoints=websecure" - "traefik.http.routers.crypto-dash.tls=true" - "traefik.http.services.crypto-dash.loadbalancer.server.port=80" - "traefik.http.routers.crypto-dash.middlewares=authentik@docker" redis: image: redis:7-alpine container_name: crypto-bot-redis restart: unless-stopped volumes: - redis_data:/data volumes: redis_data: networks: default: external: true name: traefik-proxy