paperless 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. paperless:
  2. image: ghcr.io/paperless-ngx/paperless-ngx:latest
  3. container_name: paperless
  4. restart: unless-stopped
  5. command: ["runserver", "0.0.0.0:8000"]
  6. ports:
  7. - "8000:8000"
  8. volumes:
  9. - ../data/paperless:/usr/src/paperless/data
  10. - ../config/paperless/media:/usr/src/paperless/media
  11. - ../config/paperless/export:/usr/src/paperless/export
  12. - ../config/paperless/consume:/usr/src/paperless/consume
  13. - ../config/paperless/src/paperless/custom_settings.py:/usr/src/paperless/src/paperless/custom_settings.py
  14. environment:
  15. # Base Configuration
  16. - PAPERLESS_SETTINGS_MODULE=paperless.settings_custom
  17. - PAPERLESS_ADMIN_USER=${PAPERLESS_ADMIN_USER}
  18. - PAPERLESS_ADMIN_PASSWORD=${PAPERLESS_ADMIN_PASSWORD}
  19. - PAPERLESS_SECRET_KEY=${PAPERLESS_SECRET_KEY}
  20. - PAPERLESS_URL=https://docs.mrx8086.com
  21. - PAPERLESS_ALLOWED_HOSTS=docs.mrx8086.com
  22. - PAPERLESS_REDIS=redis://paperless-redis:6379
  23. - PAPERLESS_DBHOST=paperless-db
  24. - PAPERLESS_DBPORT=5432
  25. - PAPERLESS_DBNAME=paperless
  26. - PAPERLESS_DBUSER=${PAPERLESS_DB_USER}
  27. - PAPERLESS_DBPASS=${PAPERLESS_DB_PASSWORD}
  28. - PAPERLESS_LOGGING_LEVEL=DEBUG
  29. # OIDC Base Settings
  30. - PAPERLESS_OIDC_ENABLED=true
  31. - PAPERLESS_OIDC_DEBUG=true
  32. - PAPERLESS_DJANGO_LOGIN_REDIRECT_URL=/
  33. - PAPERLESS_OIDC_RP_PROVIDER_URL=https://auth.mrx8086.com/realms/office-automation
  34. - PAPERLESS_OIDC_RP_CLIENT_ID=paperless
  35. - PAPERLESS_OIDC_RP_CLIENT_SECRET=${PAPERLESS_CLIENT_SECRET}
  36. - PAPERLESS_OIDC_CALLBACK_URL=https://docs.mrx8086.com/oidc/callback/
  37. # OIDC Endpoints
  38. - PAPERLESS_OIDC_AUTH_ENDPOINT=https://auth.mrx8086.com/realms/office-automation/protocol/openid-connect/auth
  39. - PAPERLESS_OIDC_TOKEN_ENDPOINT=https://auth.mrx8086.com/realms/office-automation/protocol/openid-connect/token
  40. - PAPERLESS_OIDC_USERINFO_ENDPOINT=https://auth.mrx8086.com/realms/office-automation/protocol/openid-connect/userinfo
  41. - PAPERLESS_OIDC_JWKS_ENDPOINT=https://auth.mrx8086.com/realms/office-automation/protocol/openid-connect/certs
  42. # OIDC Claims and Scopes
  43. - PAPERLESS_OIDC_RP_SCOPE=openid profile email
  44. - PAPERLESS_OIDC_RP_USERNAME_CLAIM=preferred_username
  45. - PAPERLESS_OIDC_RP_NAME_CLAIM=name
  46. - PAPERLESS_OIDC_RP_EMAIL_CLAIM=email
  47. # OIDC Security Settings
  48. - PAPERLESS_OIDC_RP_SIGN_ALGO=RS256
  49. - PAPERLESS_OIDC_RP_VERIFY_SSL=true
  50. - PAPERLESS_OIDC_USE_PKCE=true
  51. - PAPERLESS_OIDC_CREATE_USER=true
  52. - "PAPERLESS_OIDC_USER_CLAIM_MAPPING={\"preferred_username\": \"username\", \"email\": \"email\", \"name\": \"name\"}"
  53. # OIDC Token Management
  54. - PAPERLESS_OIDC_RP_RENEW_TOKEN_BEFORE_EXPIRY=true
  55. # Proxy Settings (Added)
  56. - PAPERLESS_FORCE_SCRIPT_NAME=
  57. - PAPERLESS_PROXY_SSL=true
  58. - PAPERLESS_USE_X_FORWARD_HOST=true
  59. - PAPERLESS_USE_X_FORWARD_PORT=true
  60. depends_on:
  61. - paperless-db
  62. - paperless-redis
  63. networks:
  64. - paperless-network
  65. extra_hosts:
  66. - "auth.mrx8086.com:172.23.171.133"
  67. healthcheck:
  68. test: ["CMD", "curl", "-f", "http://localhost:8000/"]
  69. interval: 30s
  70. timeout: 10s
  71. retries: 3