Linux

Where Does Discourse Store Data and Config?

Self-hosted Discourse lives in /var/discourse with app config in containers/app.yml. Back up through the admin panel plus the host folder.

Last updated

Docker-based Discourse centers on one host folder. The launcher, the app.yml container definition, TLS material, and shared volumes all sit under it, while the database and uploads live inside the managed volumes. Admin-panel backups capture content; the host folder captures shape.

Upgrades run through git pull plus launcher rebuild, which compiles a fresh image around your config. Plugin additions mean editing app.yml hooks and rebuilding, with minutes of downtime. Keep the host folder in version control or at least in regular file backups; rebuilding without it is guesswork.

Where Discourse Forum stores this, by platform

Linux
/var/discourse/

Launcher, app.yml, certs, and volumes here. Pair admin backups with host-folder copies. Rebuild the container after every app.yml edit.

Frequently asked questions

What must I back up?

Take an admin-panel backup for the database and uploads, and keep the host folder with app.yml and certificates alongside it. Restores need both halves on matching versions. Test launcher rebuilds after config edits before assuming the forum survived them.

How do I apply config changes?

Edit containers/app.yml, then run launcher rebuild. The rebuild takes minutes of downtime while the image compiles. Small edits like SMTP passwords still need the full rebuild; there is no hot-reload for container config.

Notice an outdated path? Let us know.