Skip to content

Self-host Flarum

updated Sep 2026prices checked · Jul 2026
We earn commissions when you shop through the links below. Full disclosure →

A lightweight, MIT-licensed forum written in PHP (on Laravel components) with a Mithril.js front end. Most features, from tags and mentions to likes and moderation, are extensions you can switch off. The 1.x stable line runs on MySQL or MariaDB behind Apache or Nginx and installs with Composer; upstream publishes no Docker image, and PostgreSQL and SQLite support arrive with 2.0, still in release candidates.

Key facts

CategoryForum
LicenseMIT
StackPHP, Mithril.js, MySQL
Min RAM512 MB
Official imageno
Difficulty
Our recommendation

Pick Flarum when you want a fast, minimal, MIT-licensed forum that runs on ordinary PHP hosting: a PHP back end built on Laravel components, a Mithril.js front end, and MySQL or MariaDB. Most features are extensions — tags, mentions, likes, flags, approval, sticky, lock, suspend, subscriptions, Markdown, BBCode and emoji ship in the default install and can be switched off — and the community ecosystem is Composer packages you add from the command line or, with the Extension Manager, from the admin panel. Install the stable 1.x line with `composer create-project flarum/flarum:^1.8.0`; upstream publishes no Docker image. Flarum publishes no RAM figure; our 512 MB floor is an estimate. If you want chat, polls and importers built in and are happy to run a Docker container, Discourse is the catalog's other forum.

What you need

  • Any VPS with at least 512 MB of RAM
  • A domain you control — most self-hosted setups need HTTPS in front of them
  • About an afternoon — budget time for troubleshooting
Where to host itaffiliate disclosure
Hetzner Cloudrun it on
From $23.59/mo · 2 vCPU / 4 GB / 80 GB · EU + US
Get Hetzner Cloud (opens in new tab)
Kamaterafree trial
From $4/mo · 1 vCPU / 1 GB / 20 GB · US + EU + Asia
Start free on Kamatera → (opens in new tab)
DigitalOceanalso works on
From $6/mo · 1 vCPU / 1 GB / 25 GB · US + EU + Asia
Deploy on DigitalOcean → (opens in new tab)

Paid link — we earn a commission if you shop through it.

Install

Run these commands on your server:

# Flarum 1.x stable — Composer on a PHP host, per docs.flarum.org (1.x install guide); upstream publishes no Docker image
# needs Apache (mod_rewrite) or Nginx, PHP 7.3+ with curl dom fileinfo gd json mbstring openssl pdo_mysql tokenizer zip, and MySQL 5.6+/8.0.23+ or MariaDB 10.0.5+
mkdir -p /var/www/flarum && cd /var/www/flarum
composer create-project flarum/flarum:^1.8.0 .
# set the web root to /var/www/flarum/public; Nginx: add  include /var/www/flarum/.nginx.conf;  to the server block (Apache uses the bundled .htaccess)
# the PHP user needs write access to this directory, storage/ and assets/; then open the site to finish the web installer
# scheduler for extensions that use it (crontab -e):
* * * * * cd /var/www/flarum && php flarum schedule:run >> /dev/null 2>&1

What you take on

Flarum is simple to run once the web stack is right, and its docs are clear about what that stack is:

non-negotiableFlarum 2.0 is published as release candidates and its docs warn it is "not ready for production use". The stable 1.x line runs on MySQL 5.6+/8.0.23+ or MariaDB 10.0.5+ only; PostgreSQL and SQLite support and the first-party realtime, messages and audit extensions arrive with 2.0, so do not plan a 1.x forum around them.
non-negotiableYou bring the stack: Apache with mod_rewrite and .htaccess allowed, or Nginx including the bundled .nginx.conf; PHP with curl, dom, fileinfo, gd, json, mbstring, openssl, pdo_mysql, tokenizer and zip; and write access for the PHP user to the install directory, storage/ and assets/. On Apache, upstream says Flarum "will not function properly" if mod_rewrite is off or .htaccess is not allowed.
non-negotiableConfigure email before opening registration. Flarum's docs say a wrong mail configuration "will cause errors when users try to register"; the SMTP driver or a working sendmail is needed for verification and password resets.
non-negotiableExtensions that schedule work need a cron entry running php flarum schedule:run every minute, or their tasks silently never run. The Extension Manager lets an admin install any Composer package, so upstream advises installing it only if you trust every admin with that.
non-negotiableUpstream publishes no Docker image (the Docker Hub images are community-maintained), and there are no official importers from other forums, only community scripts for FluxBB, MyBB, phpBB and SMF2 that upstream "can't guarantee".

Head-to-head

More self-hosted tools

We use analytics cookies (Google Analytics, PostHog) to see which guides are useful. No ad networks, no cross-site tracking. See our privacy policy.