macrostack

Layer 5 · self-hosting reality check

What it actually takes to self-host BookStack

The docs say 1 GB. The vendor says it "can easily be ran on a 1GB RAM VM".. In practice you want 2 GB with MySQL on the same box for a team. A report on BookStack's GitHub describes normal speed on a 2 GB, 1 vCPU x86 VM.. Here is the honest version — real requirements, real monthly cost, what you will be maintaining, and the one thing that catches people out.

Usually reached from Confluence alternatives, where BookStack is one of the picks.

Wondering whether you need to at all? Is Confluence free? — what the free tier actually allows, and where the wall is.

RAM — documented minimum1 GB. The vendor says it "can easily be ran on a 1GB RAM VM".
RAM — what it really needs2 GB with MySQL on the same box for a team. A report on BookStack's GitHub describes normal speed on a 2 GB, 1 vCPU x86 VM.
CPU1 vCPU, x86 preferred. The same GitHub report found 500–700 ms page loads on a Raspberry Pi 4 (ARM64).
DiskA few GB for the app and database, plus uploaded images (public/uploads) and page attachments (storage/uploads).
Monthly cost$6–12/mo on a 1–2 GB VPS
Setup time30 minutes with the official Ubuntu script on a fresh VM, 1–2 hours by hand.
How you install itThe official install script for a fresh Ubuntu 22.04, 24.04 or 26.04 (Apache, MySQL, PHP), or a manual git + Composer install. Docker images exist but are community-maintained (LinuxServer.io, solidnerd), not official.
Ongoing maintenanceRun `git pull origin release`, `composer install --no-dev` and `php artisan migrate`, after backing up the database and uploads. Releases come often and are often security-related (v26.05.4 to v26.09.1 in five weeks), and the minimum PHP version rises over time (8.2 since v25.02).
Where it stops scalingA company wiki on one box. The vendor says resource use scales with activity. Past that, move MySQL to its own host and put cache and sessions on Redis or Memcached; both are documented.

The thing that catches people out

BookStack stores absolute URLs, including your domain, in the database for things like images. If you start on an IP address or a temporary hostname and later move to your real HTTPS domain, images and links break across every page. The fix is `php artisan bookstack:update-url <old> <new>`, plus editing APP_URL in .env by hand, because the command does not touch it. Settle the final HTTPS URL before anyone writes a page. When you restore a backup, keep the old APP_KEY, because a new one breaks multi-factor authentication.

When not to self-host BookStack

You want Notion-style free nesting or docs-as-code in Git. BookStack's structure is fixed at shelves, books, chapters and pages, and content lives in MySQL rather than in Markdown files. Wiki.js or Outline fit those needs better.

Every guide here carries this section. A site that only ever tells you to self-host is selling something — the useful answer is sometimes no.

Other Layer 5 self-hosting guides

Common questions

How much RAM does BookStack actually need?
2 GB with MySQL on the same box for a team. A report on BookStack's GitHub describes normal speed on a 2 GB, 1 vCPU x86 VM. in practice. The documented minimum is 1 GB. The vendor says it "can easily be ran on a 1GB RAM VM"., which is the figure at which the process starts rather than the figure at which it works under real use. 1 vCPU, x86 preferred. The same GitHub report found 500–700 ms page loads on a Raspberry Pi 4 (ARM64). alongside it.
What does self-hosting BookStack cost per month?
$6–12/mo on a 1–2 GB VPS This is commodity VPS pricing and excludes your time, which is the larger cost for most people — budget for run `git pull origin release`, `composer install --no-dev` and `php artisan migrate`, after backing up the database and uploads. Releases come often and are often security-related (v26.05.4 to v26.09.1 in five weeks), and the minimum PHP version rises over time (8.2 since v25.02).
How long does it take to set up BookStack?
30 minutes with the official Ubuntu script on a fresh VM, 1–2 hours by hand., via The official install script for a fresh Ubuntu 22.04, 24.04 or 26.04 (Apache, MySQL, PHP), or a manual git + Composer install. Docker images exist but are community-maintained (LinuxServer.io, solidnerd), not official..
When should I NOT self-host BookStack?
You want Notion-style free nesting or docs-as-code in Git. BookStack's structure is fixed at shelves, books, chapters and pages, and content lives in MySQL rather than in Markdown files. Wiki.js or Outline fit those needs better.
What is the most common mistake when self-hosting BookStack?
BookStack stores absolute URLs, including your domain, in the database for things like images. If you start on an IP address or a temporary hostname and later move to your real HTTPS domain, images and links break across every page. The fix is `php artisan bookstack:update-url <old> <new>`, plus editing APP_URL in .env by hand, because the command does not touch it. Settle the final HTTPS URL before anyone writes a page. When you restore a backup, keep the old APP_KEY, because a new one breaks multi-factor authentication.
The Macrostack brief

New swaps, worth your inbox.

A short, occasional email when we add a high-intent alternative or ship a new head-to-head. No spam, no selling your address — unsubscribe in one click.