version: "3.8" services: pradit: build: context: . dockerfile: Dockerfile args: - GEMINI_API_KEY=${GEMINI_API_KEY} container_name: pradit-prod # Ports section is optional if Traefik is on the same network, # but okay to keep if you need direct access for debugging. ports: - 3033:3033 environment: - NODE_ENV=production restart: unless-stopped healthcheck: test: - CMD - wget - --quiet - --tries=1 - --spider - http://localhost:3033/health # <--- CHANGED: Added port 3033 interval: 30s timeout: 10s retries: 3 start_period: 40s networks: - webservice-pradit-v2ei4c labels: - traefik.http.routers.webservice-pradit-v2ei4c-40-web.rule=Host(`pradit.sirin.dev`) - traefik.http.routers.webservice-pradit-v2ei4c-40-web.entrypoints=web - traefik.http.services.webservice-pradit-v2ei4c-40-web.loadbalancer.server.port=3033 - traefik.http.routers.webservice-pradit-v2ei4c-40-web.service=webservice-pradit-v2ei4c-40-web - traefik.http.routers.webservice-pradit-v2ei4c-40-web.middlewares=redirect-to-https@file - traefik.http.routers.webservice-pradit-v2ei4c-40-websecure.rule=Host(`pradit.sirin.dev`) - traefik.http.routers.webservice-pradit-v2ei4c-40-websecure.entrypoints=websecure - traefik.http.services.webservice-pradit-v2ei4c-40-websecure.loadbalancer.server.port=3033 - traefik.http.routers.webservice-pradit-v2ei4c-40-websecure.service=webservice-pradit-v2ei4c-40-websecure - traefik.http.routers.webservice-pradit-v2ei4c-40-websecure.tls=true # <--- ENSURE THIS IS TRUE - traefik.enable=true networks: webservice-pradit-v2ei4c: name: webservice-pradit-v2ei4c external: true