Where Does Discourse Store Uploads and Backups?
Discourse Docker shared folders for uploads and backups, plus the container config file that defines them.
Last updated
Official Discourse installs revolve around /var/discourse. That folder holds the launcher, a containers folder with app.yml, and a shared folder with live data. Uploads sit in shared/standalone/uploads and automatic backups in shared/standalone/backups.
App.yml is the source of truth. It maps those host folders into the container and holds SMTP and domain settings. Back up app.yml with the backups folder and a database dump. A rebuild from those three restores the forum on a fresh host without manual steps.
Where Discourse stores this, by platform
/var/discourse/shared/standalone
Host side of the Docker volume mapping. Uploads holds images and attachments, backups holds dated tarballs with DB dumps. This folder is the bulk of disk usage.
/var/discourse/containers/app.yml
Defines volumes, mail, and domain for the ./launcher rebuild flow. Keep a copy off the server. Without it a restore means reconstructing mail and domain settings by hand.
Frequently asked questions
where are Discourse backup files
Download from Admin, Backups in the web UI, or copy /var/discourse/shared/standalone/backups on the host. Each tarball bundles the database dump and uploads. Copy the file off the server for safekeeping.
how do i change where Discourse stores uploads
Edit /var/discourse/containers/app.yml and rebuild with ./launcher rebuild app. The volumes section maps host shared folders into the container. Uploads and backups follow those mappings.
Notice an outdated path? Let us know.