Where Does Outline Store Uploads and Data?
Where Outline stores uploads on a self-hosted install, how the data volume maps, and what stays in Postgres and Redis.
Last updated
A self-hosted Outline keeps uploads in /var/lib/outline/data inside the app container. Avatars and document attachments land there when FILE_STORAGE is set to local, which has been the simple no-S3 option since the 0.72 era. Documents themselves live in Postgres, with Redis beside it for sessions and queues.
The compose file persists uploads through a storage-data volume mapped onto that container path. A bind mount onto any host folder works too and helps when migrating files from an older MinIO setup. The database volume matters just as much: files without the database are orphans, and a database without files is full of broken embeds.
Where Outline stores this, by platform
/var/lib/outline/data
Container path for avatars and attachments, persisted through the storage-data volume. The FILE_STORAGE_LOCAL_ROOT_DIR variable points here. Postgres keeps documents in database-data and Redis state sits apart, so back up the volume together with a database dump.
Frequently asked questions
how do I back up a self-hosted Outline
Back up the storage-data volume for files plus a pg_dump of the database-data volume for documents and settings. Redis can be rebuilt from scratch. Check the actual host path with docker volume inspect, since named volumes hide under Docker's own storage root.
can Outline store uploads in S3 instead
Set FILE_STORAGE to s3 and provide the bucket credentials, and attachments leave the local disk for object storage. The database and Redis setup does not change. Migrate existing files into the bucket so old document embeds keep resolving.
why does Outline fail to write uploads
The container expects to write as UID 1001, so a host folder owned by root gets permission denied. Chown the host path to that user or switch to a named volume, which avoids the ownership question. This trips up bind mount setups most often.
Notice an outdated path? Let us know.