
Deploy BookStack on Your Own Server
A platform to create documentation/wiki content built with PHP & Laravel
Want to deploy BookStack on your server faster? Try Senate with one-command setup, automatic HTTPS and monitoring.
What is BookStack?
A platform to create documentation/wiki content built with PHP & Laravel. GitHub: https://github.com/BookStackApp/BookStack
Self-Host BookStack
Follow these steps to deploy on your own server.
Install Docker
Skip this step if Docker is already installed on your server.
curl -fsSL https://get.docker.com | sh
Configure
Customize the settings below. Defaults work for most cases.
Deploy
Copy the configuration and run it on your server.
services:
bookstack:
image: lscr.io/linuxserver/bookstack:v24.10-ls172
environment:
APP_KEY: ""
APP_URL: http://bookstack.your-domain.com
DB_DATABASE: bookstackapp
DB_HOST: bookstack-db
DB_PASSWORD: d9b99ee5bcdb4bb5
DB_PORT: "3306"
DB_USERNAME: bookstack
PGID: "1000"
PUID: "1000"
volumes:
- bookstack-config:/config
bookstack-db:
image: lscr.io/linuxserver/mariadb:10.11.10-r0-ls161
environment:
MYSQL_DATABASE: bookstackapp
MYSQL_PASSWORD: d9b99ee5bcdb4bb5
MYSQL_ROOT_PASSWORD: d9b99ee5bcdb4bb5
MYSQL_USER: bookstack
PGID: "1000"
PUID: "1000"
TZ: Etc/UTC
volumes:
- bookstack-db-config:/config
volumes:
bookstack-config: {}
bookstack-db-config: {}
Then run:
docker compose up -d
Access
Once started, access your app at http://localhost:80
Why Self-Host BookStack?
Full Data Ownership
Your data stays on your servers. No third-party access.
No Monthly Fees
Pay only for your server. No per-seat or usage charges.
Complete Control
Customize, backup, and scale on your own terms.
Privacy & Compliance
Meet GDPR, HIPAA, or internal security requirements.
Technical Details
Docker Image
lscr.io/linuxserver/bookstack:${bookstack_version}Official Docs
www.bookstackapp.comWant to go faster?
Try Senate! Senate handles Docker, HTTPS, updates, and monitoring for you. Deploy any of our 300+ apps with a single command.
Install on any Linux server:
sh -c "$(curl -sSL https://get.senate.sh)"