Linux

Where Does BookStack Store Uploads and Config?

BookStack image, attachment, and config paths for bare metal installs, plus the LinuxServer container mapping.

Last updated

BookStack keeps code, uploads, and config in predictable places. A bare metal install usually lives at /var/www/bookstack. Images land in public/uploads/images and page attachments in storage/uploads/files. The .env file next to them holds database credentials and the APP_KEY.

Docker layouts remap these paths. The LinuxServer image persists uploads under /config/www/uploads and /config/www/files with the .env at /config/www/.env. Back up the .env with the upload folders. Without the original APP_KEY, encrypted values from the old instance stop working.

Where BookStack stores this, by platform

Linux
/var/www/bookstack

Default bare metal path on Ubuntu. Images are in public/uploads/images, attachments in storage/uploads/files. Give the web user write access to storage, bootstrap/cache, and public/uploads.

Linux
/config/www

Container path that persists uploads and settings on the host. Maps to storage/uploads/files, storage/uploads/images, and public/uploads inside the app. The .env here is the file to keep safe.

Frequently asked questions

what do i back up before moving a BookStack instance

Back up .env, public/uploads, storage/uploads, and themes, plus a database dump. The .env holds the APP_KEY that protects multi-factor secrets, so keep the old key on restore.

how do i switch BookStack uploads to S3

Set STORAGE_TYPE in .env. Local keeps images under public/uploads and attachments under storage/uploads. S3 options move both to a bucket for multi-server setups.

Notice an outdated path? Let us know.