services: comfyui: build: context: . image: xiteng-comfyui:0.31.0-manager-4.2.2 container_name: comfyui restart: unless-stopped entrypoint: ["/bin/bash", "/entrypoint-patched.sh"] environment: USER_ID: ${COMFYUI_USER_ID:-1000} GROUP_ID: ${COMFYUI_GROUP_ID:-1000} PYTHONPATH: /opt/comfyui-manager command: ["--cpu", "--enable-manager"] volumes: - ./entrypoint.sh:/entrypoint-patched.sh:ro - ./models:/opt/comfyui/models:rw - ./custom_nodes:/opt/comfyui/custom_nodes:rw - ./output:/opt/comfyui/output:rw networks: - homelab_net labels: # Traefik - "traefik.enable=true" - "traefik.http.routers.comfyui.rule=Host(`comfy.xiteng.site`)" - "traefik.http.routers.comfyui.entrypoints=websecure" - "traefik.http.routers.comfyui.tls=true" - "traefik.http.routers.comfyui.tls.certresolver=cfresolver" - "traefik.http.routers.comfyui.service=comfyui" - "traefik.http.routers.comfyui.middlewares=comfyui-scheme,comfyui-auth" - "traefik.http.services.comfyui.loadbalancer.server.port=8188" - "traefik.http.routers.comfyui-http.rule=Host(`comfy.xiteng.site`)" - "traefik.http.routers.comfyui-http.entrypoints=web" - "traefik.http.routers.comfyui-http.service=comfyui" - "traefik.http.routers.comfyui-http.middlewares=comfyui-scheme,comfyui-auth" - "xiteng.site.cache.comfyui.enabled=true" - "xiteng.site.cache.comfyui.routers=comfyui,comfyui-http" - "xiteng.site.cache.comfyui.paths=/assets/,/static/" - "xiteng.site.cache.comfyui.edge-ttl=604800" - "xiteng.site.cache.comfyui.stale-while-revalidate=86400" # Authentik ForwardAuth - "traefik.http.middlewares.comfyui-scheme.headers.customrequestheaders.X-Forwarded-Proto=https" - "traefik.http.middlewares.comfyui-auth.forwardauth.address=http://authentik-outpost:9000/outpost.goauthentik.io/auth/traefik" - "traefik.http.middlewares.comfyui-auth.forwardauth.trustForwardHeader=true" - "traefik.http.middlewares.comfyui-auth.forwardauth.authResponseHeaders=X-authentik-username,X-authentik-groups,X-authentik-email,X-authentik-name" - "xiteng.site.component.comfyui.enabled=true" - "xiteng.site.component.comfyui.name=ComfyUI" - "xiteng.site.component.comfyui.description=节点式图像生成、模型与工作流实验环境。" - "xiteng.site.component.comfyui.section=services" - "xiteng.site.component.comfyui.category=AI" - "xiteng.site.component.comfyui.url=https://comfy.xiteng.site" - "xiteng.site.component.comfyui.access=sso" - "xiteng.site.component.comfyui.access-label=需要 Authentik" - "xiteng.site.component.comfyui.icon=CU" - "xiteng.site.component.comfyui.icon-url=https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/svg/comfyui.svg" - "xiteng.site.component.comfyui.accent=red" - "xiteng.site.component.comfyui.order=210" - "xiteng.site.component.comfyui.monitor.enabled=true" - "xiteng.site.component.comfyui.monitor.url=http://comfyui:8188" networks: homelab_net: external: true