Home Catalog Paperless-ngx
Productivity

Paperless-ngx

A document management system that transforms your physical documents into a searchable online archive so you can keep, well, less paper. It automatically imports, tags, and archives your scanned documents.

ARM64 & AMD64
Docker & Rootless Podman
100% Self-Hosted (Zero Lock-in)
RAM Profile: Low
Default Port: Port 8000

Why this Configuration?

Quick Start (Standalone Docker Compose)

The snippet below is immediately ready to run in any standard Docker or Podman environment:

services:
  paperless-ngx:
    container_name: njorddeploy-paperless-ngx
    image: "ghcr.io/paperless-ngx/paperless-ngx:latest"
    ports:
      - "8000:8000"
    environment:
      - "PAPERLESS_REDIS=redis://njorddeploy-paperless-broker:6379"
      - "PAPERLESS_DBHOST=njorddeploy-paperless-db"
      - "PAPERLESS_DBNAME=paperless"
      - "PAPERLESS_DBUSER=paperless"
      - "PAPERLESS_DBPASS=jp2ioLkJhGfDsAqWe123456_pgpass"
      - "PAPERLESS_SECRET_KEY=PasW0rD1nC0mP1eX_K3yS3cR3t_L0nG_R@nD0m_S7r!nG_F0r_P@p3rL3sS"
      - "PAPERLESS_URL=http://localhost:8000"
      - "USERMAP_UID=0"
      - "USERMAP_GID=0"
      - "TZ=Etc/UTC"
    volumes:
      - "./data/paperless-ngx/data:/usr/src/paperless/data"
      - "./data/paperless-ngx/media:/usr/src/paperless/media"
      - "./data/paperless-ngx/export:/usr/src/paperless/export"
      - "./data/paperless-ngx/consume:/usr/src/paperless/consume"
    depends_on:
      - njorddeploy-paperless-broker
      - njorddeploy-paperless-db
    networks:
      - njorddeploy_net
    user: "0:0"

  njorddeploy-paperless-broker:
    container_name: njorddeploy-paperless-broker
    image: redis:7-alpine
    volumes:
      - "./data/paperless-ngx/redisdata:/data"
    networks:
      - njorddeploy_net
    user: "0:0"

  njorddeploy-paperless-db:
    container_name: njorddeploy-paperless-db
    image: postgres:16-alpine
    environment:
      - "POSTGRES_USER=paperless"
      - "POSTGRES_PASSWORD=jp2ioLkJhGfDsAqWe123456_pgpass"
      - "POSTGRES_DB=paperless"
    volumes:
      - "./data/paperless-ngx/pgdata:/var/lib/postgresql/data"
    networks:
      - njorddeploy_net
    user: "0:0"

networks:
  njorddeploy_net:

Start the service directly via the command line: docker compose up -d

Configuration & Environment Variables

Key configuration parameters and defaults derived from the NjordDeploy component template:

Variable Default Value Description
PAPERLESS_WEB_PORT 8000 The host port for accessing the Paperless-ngx web interface.
PAPERLESS_DBNAME paperless The name of the PostgreSQL database used by Paperless-ngx.
PAPERLESS_DBUSER paperless The username for accessing the PostgreSQL database.
PAPERLESS_DBPASS jp2ioLkJhGfDsAqWe123456_pgpass The password for the PostgreSQL database user.
PAPERLESS_SECRET_KEY PasW0rD1nC0mP1eX_K3yS3cR3t_L0nG_R@nD0m_S7r!nG_F0r_P@p3rL3sS A unique secret key used for cryptographic signing in Paperless-ngx. Keep this secure.
USERMAP_UID 0 The User ID (UID) that the Paperless-ngx container will use. Set to 0 for root, or match your host user for permission consistency.
USERMAP_GID 0 The Group ID (GID) that the Paperless-ngx container will use. Set to 0 for root, or match your host group for permission consistency.
TZ Etc/UTC Specify the timezone for the container (e.g., Europe/Berlin, America/New_York).

Ecosystem & Enterprise Integration

Effortless Management with NjordDeploy

Deploy, monitor, and update this service with a single click on your own hardware via the NjordDeploy Configurator.