Manage your digital archives with an open-source document management system designed for efficiency. Easily store, organize, and index scanned documents in PDF, JPEG, and TIFF formats. Optical Character Recognition (OCR) automatically extracts text from images using the Tesseract engine, making your files fully searchable and selectable across more than 100 languages. Keep your records accurate with Document Versioning, which safely retains original uploads while creating new versions for OCR processing or contract updates. Tailor your organization system using Custom Fields and Metadata to track specific attributes like prices, dates, or external IDs. Group files logically with Custom Categories such as invoices or receipts. If a bulk scan goes wrong, the built-in Page Management tools let you quickly reorder, rotate, and extract pages without needing to rescan. Enjoy a beautiful, intuitive web interface that makes managing digital paperwork a seamless experience.
services:
backend:
image: ghcr.io/papermerge/core:3.2
ports:
- "8000:80"
environment:
- PAPERMERGE__DATABASE__URL=postgres://${DB_USER}:${DB_PASSWORD}@db:5432/${DB_NAME}
- PAPERMERGE__REDIS__URL=redis://redis:6379/0
- PAPERMERGE__SEARCH__URL=solr://solr:8983/solr/papermerge
- PAPERMERGE__SECURITY__SECRET_KEY=${SECRET_KEY}
- PAPERMERGE__SECURITY__SUPERUSER_USERNAME=${ADMIN_USERNAME}
- PAPERMERGE__SECURITY__SUPERUSER_EMAIL=${ADMIN_EMAIL}
- PAPERMERGE__SECURITY__SUPERUSER_PASSWORD=${ADMIN_PASSWORD}
volumes:
- ./media:/app/media
depends_on:
- db
- redis
- solr
worker:
image: ghcr.io/papermerge/core:3.2
command: worker
environment:
- PAPERMERGE__DATABASE__URL=postgres://${DB_USER}:${DB_PASSWORD}@db:5432/${DB_NAME}
- PAPERMERGE__REDIS__URL=redis://redis:6379/0
- PAPERMERGE__SEARCH__URL=solr://solr:8983/solr/papermerge
- PAPERMERGE__SECURITY__SECRET_KEY=${SECRET_KEY}
volumes:
- ./media:/app/media
depends_on:
- db
- redis
- solr
db:
image: postgres:15
volumes:
- ./postgres-data:/var/lib/postgresql/data
environment:
- POSTGRES_USER=${DB_USER}
- POSTGRES_PASSWORD=${DB_PASSWORD}
- POSTGRES_DB=${DB_NAME}
redis:
image: redis:7
volumes:
- ./redis-data:/data
solr:
image: solr:9
ports:
- "8983:8983"
volumes:
- ./solr-data:/var/solr
command: solr-precreate papermergeSECRET_KEY=your_super_secret_key_change_this
ADMIN_USERNAME=admin
ADMIN_EMAIL=admin@example.com
ADMIN_PASSWORD=admin_password_change_this
DB_USER=papermerge
DB_PASSWORD=db_password_change_this
DB_NAME=papermergeAuto-fetched about 20 hours ago
Auto-fetched about 20 hours ago