name: paperless
services:
  paperless:
    image: ghcr.io/paperless-ngx/paperless-ngx:2.20
    restart: unless-stopped
    depends_on:
      - db
      - broker
    ports:
      - '8005:8000'
    healthcheck:
      test:
        - CMD
        - curl
        - '-f'
        - http://localhost:8000
      interval: 30s
      timeout: 10s
      retries: 5
    volumes:
      - /DATA/AppData/paperless/data:/usr/src/paperless/data
      - /DATA/AppData/paperless/media:/usr/src/paperless/media
      - /DATA/AppData/paperless/export:/usr/src/paperless/export
      - /DATA/AppData/paperless/consume:/usr/src/paperless/consume
    environment:
      PAPERLESS_REDIS: redis://broker:6379
      PAPERLESS_DBENGINE: mariadb
      PAPERLESS_DBHOST: db
      PAPERLESS_DBUSER: paperless
      PAPERLESS_DBPASS: paperless
      PAPERLESS_DBPORT: 3306
      PAPERLESS_ADMIN_USER: admin
      PAPERLESS_ADMIN_PASSWORD: admin
      PAPERLESS_TIKA_ENABLED: 1
      PAPERLESS_TIKA_GOTENBERG_ENDPOINT: http://gotenberg:3000
      PAPERLESS_TIKA_ENDPOINT: http://tika:9998
  broker:
    image: redis:8.6.1
    restart: unless-stopped
    volumes:
      - /DATA/AppData/paperless/redis/data:/data
  db:
    image: mariadb:12.2.2
    restart: unless-stopped
    volumes:
      - /DATA/AppData/paperless/mysql:/var/lib/mysql
    environment:
      MARIADB_HOST: paperless
      MARIADB_DATABASE: paperless
      MARIADB_USER: paperless
      MARIADB_PASSWORD: paperless
      MARIADB_ROOT_PASSWORD: paperless
  tika:
    image: ghcr.io/paperless-ngx/tika:latest
    restart: unless-stopped
    ports:
      - '9998:9998'
  gotenberg:
    image: docker.io/gotenberg/gotenberg:7.10
    restart: unless-stopped
    command:
      - gotenberg
      - '--chromium-disable-javascript=true'
      - '--chromium-allow-list=file:///tmp/.*'
    ports:
      - '3000:3000'
x-casaos:
  architectures:
    - amd64
    - arm
    - arm64
  main: paperless
  description:
    en_us: Paperless-ngx forked from paperless-ng to continue the great work and distribute responsibility of supporting and advancing the project among a team of people.
  tagline:
    en_us: Paperless-ngx is a document management system that transforms your physical documents into a searchable online archive so you can keep, well, less paper.
  developer: paperless-ngx
  author: WisdomSky
  icon: https://avatars.githubusercontent.com/u/99562962
  thumbnail: https://avatars.githubusercontent.com/u/99562962
  title:
    en_us: Paperless-ngx
  tips:
    before_install:
      en_us: |
        ## Credentials:

        username: `admin`

        password: `admin`
  category: Coolstore
  port_map: '8005'
