services: paperless-gpt: image: icereed/paperless-gpt:v0.25.1@sha256:c0ce6186028911101a2cfe68353f14a9dbb2653596f3f1cff94de4b6db3114ff container_name: paperless-gpt restart: unless-stopped security_opt: - no-new-privileges:true dns: - 1.1.1.1 - 8.8.8.8 environment: TZ: "Europe/Berlin" PAPERLESS_BASE_URL: "http://paperless:8000" PAPERLESS_PUBLIC_URL: "https://paperless.kaleschke.info" PAPERLESS_API_TOKEN: "${PAPERLESS_API_TOKEN}" MANUAL_TAG: "paperless-gpt" AUTO_TAG: "paperless-gpt-auto" LLM_PROVIDER: "openai" LLM_MODEL: "gpt-5.4-mini" OPENAI_API_KEY: "${OPENAI_API_KEY}" OPENAI_BASE_URL: "https://api.openai.com/v1" TOKEN_LIMIT: "12000" LLM_REQUESTS_PER_MINUTE: "30" LLM_LANGUAGE: "German" OCR_PROVIDER: "llm" VISION_LLM_PROVIDER: "openai" VISION_LLM_MODEL: "gpt-5.4-mini" VISION_LLM_TEMPERATURE: "1.0" VISION_LLM_REQUESTS_PER_MINUTE: "20" OCR_PROCESS_MODE: "image" CREATE_NEW_TAGS: "true" AUTO_GENERATE_TITLE: "true" AUTO_GENERATE_TAGS: "true" AUTO_GENERATE_CORRESPONDENTS: "true" AUTO_GENERATE_DOCUMENT_TYPE: "true" LOG_LEVEL: "info" volumes: - /mnt/user/appdata/paperless-gpt/data:/app/data - /mnt/user/appdata/paperless-gpt/prompts:/app/prompts networks: - frontend_net labels: - "traefik.enable=true" - "traefik.docker.network=frontend_net" - "traefik.http.routers.paperless-gpt.rule=Host(`paperless-gpt.kaleschke.info`)" - "traefik.http.routers.paperless-gpt.entrypoints=websecure" - "traefik.http.routers.paperless-gpt.tls=true" - "traefik.http.routers.paperless-gpt.tls.certresolver=le" - "traefik.http.routers.paperless-gpt.middlewares=authelia@file,secure-headers@file" - "traefik.http.services.paperless-gpt.loadbalancer.server.port=8080" networks: frontend_net: external: true