Linux

Where Does Paperless-ngx Store Documents and Database?

Paperless-ngx Docker volumes for media, data, consume and export plus config files.

Last updated

Paperless-ngx splits state across Docker volumes: media holds documents and thumbnails, data holds the SQLite database and index, consume stages inbound scans, and export carries backups. Settings come from docker-compose.env beside the compose file.

A backup needs media plus data plus the env file together. Documents without the database lose tags and correspondents; the database without media points at ghosts.

Where Paperless-ngx stores this, by platform

Linux
/var/lib/docker/volumes/paperless_media/_data

Default host path of the paperless_media volume with documents and thumbnails. Sibling volumes paperless_data (db.sqlite3, index), paperless_pgdata or dbdata for external databases, plus ./consume and ./export binds and docker-compose.env for settings. Confirm with docker volume inspect since binds change everything. Use the document exporter for portable backups.

Frequently asked questions

How do I back up Paperless-ngx?

Archive the media and data volumes plus docker-compose.env with the stack stopped, or run the document exporter for a portable dump. Both halves must restore together.

Where do inbound scans go?

Into the consume bind, defaulting to ./consume next to the compose file. Files vanish from consume once imported into media.

Notice an outdated path? Let us know.