BookStack
Simple, self-hosted, and easy-to-use platform for organizing and storing documentation.
Why consider BookStack?
BookStack is an open-source documentation and knowledge management platform organized into Shelves, Books, Chapters, and Pages with Markdown and WYSIWYG editors.
Learn BookStack by building
Practical setup notes, real use cases, and copy-ready examples in one focused guide.
In this guide10 sections
What is BookStack?
BookStack is an open-source, opinionated knowledge management and documentation platform built with PHP (Laravel), Vue.js, and MySQL. It operates as a structured, user-friendly alternative to enterprise documentation suites like Atlassian Confluence, Notion, and GitBook.
BookStack organizes content using an intuitive real-world library hierarchy: Shelves -> Books -> Chapters -> Pages. This structured approach prevents documentation from becoming disorganized over time, making it effortless for both technical and non-technical team members to create, edit, search, and maintain company knowledge.
Who Is It For?
- Enterprise IT & Operations Teams: Creating standard operating procedures (SOPs), server documentation, and IT playbooks.
- Customer Support Teams: Maintaining internal troubleshooting manuals and product documentation.
- Small Businesses & Non-Profits: Centralizing organizational policies, employee handbooks, and onboarding guides in a clean web portal.
Key Features
- Structured book hierarchy: Shelves, Books, Chapters, and Pages for intuitive information architecture.
- Dual editor choices: Full-featured WYSIWYG rich text editor or native Markdown editor with live preview.
- Powerful full-text search: Search across page contents, titles, tags, and book attachments with instant highlighting.
- Granular role-based permissions: Restrict reading, editing, and publishing permissions per shelf, book, or individual page.
- Enterprise authentication: Native support for LDAP, Active Directory, SAML 2.0, and OpenID Connect (OIDC).
Deploying BookStack with Docker Compose
version: '3.5'services: bookstack: image: lscr.io/linuxserver/bookstack:latest container_name: bookstack restart: unless-stopped environment: - PUID=1000 - PGID=1000 - TZ=UTC - APP_URL=http://localhost:6875 - DB_HOST=bookstack_db - DB_PORT=3306 - DB_USER=bookstack - DB_PASS=secure_bookstack_pass - DB_DATABASE=bookstackapp volumes: - ./config:/config ports: - "6875:80" depends_on: - bookstack_db bookstack_db: image: lscr.io/linuxserver/mariadb:latest container_name: bookstack_db restart: unless-stopped environment: - PUID=1000 - PGID=1000 - MYSQL_ROOT_PASSWORD=root_secure_pass - MYSQL_DATABASE=bookstackapp - MYSQL_USER=bookstack - MYSQL_PASSWORD=secure_bookstack_pass volumes: - ./db_data:/configStart the instance:
docker compose up -dOpen http://localhost:6875 in your browser and log in with default credentials admin@admin.com / password.
Practical Use Cases
1. Internal Engineering Runbooks & Architecture Docs
An engineering team creates a "DevOps Runbooks" Book, dividing chapters into "Kubernetes", "Database Backups", and "Incident Response".
2. Employee Onboarding & Company Policy Manual
An HR team publishes a "Company Handbook" on a public shelf, organizing chapters on company benefits, remote work guidelines, and security policies.
3. Multi-Department Restricted Documentation
An IT manager grants the Sales department read/write access to "Sales Playbooks" while restricting "Infrastructure Secrets" strictly to Systems Architects.
Troubleshooting and Limitations
- APP_URL Setting: The
APP_URLenvironment variable must match your exact external browser URL to ensure image uploads and PDF exports render with valid URLs. - PDF Export Engine: BookStack includes built-in DOMPDF export; for advanced CSS formatting in exported PDFs, configure WKHTMLTOPDF in
config.php.
Official Resources
- Official Website: https://www.bookstackapp.com
- GitHub Repository: https://github.com/BookStackApp/BookStack
- Documentation: https://www.bookstackapp.com/docs/
Related tools
More options with a similar category or technology profile.
McFly
Fly through your shell history with an intelligent neural network search engine.
cheat
Interactive command-line cheatsheets for system administrators and software engineers.
Pipenv
Python development workflow for humans uniting Pipfile, pip, and virtualenv.
Rye
Comprehensive Python package and workspace management tool written in Rust.