Simple forum software for building great communities. http://flarum.org/
- Lightweight & secure image
- Based on Alpine Linux with nginx and PHP 7
- Latest Flarum Core (v0.1.0-beta.7.2)
- MySQL/Mariadb driver
- OPCache extension configured
- VERSION = Version of flarum (default: v0.1.0-beta.7)
- 8888
- /flarum/app/assets : Flarum assets directory
- /flarum/app/extensions : Flarum extension directory
- /etc/nginx/conf.d : Nginx location directory
Variable | Description | Type | Default value |
---|---|---|---|
UID | Flarum user id | optional | 991 |
GID | Flarum group id | optional | 991 |
DEBUG | Flarum debug mode | optional | false |
FORUM_URL | Forum URL | required | none |
DB_HOST | MariaDB instance ip/hostname | optional | mariadb |
DB_USER | MariaDB database username | optional | flarum |
DB_NAME | MariaDB database name | optional | flarum |
DB_PASS | MariaDB database password | required | none |
DB_PREF | Flarum tables prefix | optional | none |
UPLOAD_MAX_SIZE | The maximum size of an uploaded file | optional | 50M |
PHP_MEMORY_LIMIT | PHP memory limit | optional | 128M |
OPCACHE_MEMORY_LIMIT | OPcache memory size in megabytes | optional | 128 |
LOG_TO_STDOUT | Enable nginx and php error logs to stdout | optional | false |
# Pull from hub.docker.com :
docker pull mondedie/docker-flarum:0.1.0-beta.7.2-stable
# or build it manually :
docker build -t mondedie/docker-flarum https://github.com/mondediefr/flarum.git#master
version: "3"
services:
flarum:
image: mondedie/docker-flarum:0.1.0-beta.7.2-stable
container_name: flarum
environment:
- FORUM_URL=http://flarum.local
- DB_PASS=xxxxxx
volumes:
- /mnt/docker/flarum/assets:/flarum/app/assets
- /mnt/docker/flarum/extensions:/flarum/app/extensions
- /mnt/docker/flarum/nginx:/etc/nginx/conf.d
depends_on:
- mariadb
mariadb:
image: mariadb:10.1
container_name: mariadb
environment:
- MYSQL_ROOT_PASSWORD=xxxxxx
- MYSQL_DATABASE=flarum
- MYSQL_USER=flarum
- MYSQL_PASSWORD=xxxxxx
volumes:
- /mnt/docker/mysql/db:/var/lib/mysql
You need a reverse proxy to access flarum, this is not described here. You can use the solution of your choice (Traefik, Nginx, Apache, Haproxy, Caddy, H2O...etc).
docker-compose up -d
Fill out the installation form :
- Your admin password must contain at least 8 characters.
- You can't use MariaDB 10.2 or 10.3 for the moment. More information on this issue here.
- If you get an error 500 with Something went wrong message, switch the
DEBUG
environment variable totrue
to see the actual error message in your browser.
Click on Install Flarum and after few seconds the forum homepage should appear.
docker pull mondedie/docker-flarum:0.1.0-beta.7.1-stable && docker-compose up -d
Navigate to yourforum.com/admin
, enter your database password and update.
Remove and restart your container :
docker-compose stop flarum
docker-compose rm flarum
docker-compose up -d
Flarum extensions list : https://packagist.org/search/?q=flarum-ext
docker exec -ti flarum extension require some/extension
docker exec -ti flarum extension remove some/extension
docker exec -ti flarum extension list
To use custom error pages, add your .html files in /mnt/docker/flarum/assets/errors
folder :
mkdir -p /mnt/docker/flarum/assets/errors
touch 403.html 404.html 500.html 503.html
chown -R 991:991 /mnt/docker/flarum
File to change the vhost flarum /etc/nginx/conf.d/custom-vhost-flarum.conf
To use file custom-vhost-flarum.conf add volume /etc/nginx/conf.d
To use the composer repository system, add your repo name and json representation in /mnt/docker/flarum/extensions/composer.repositories.txt
:
my_private_repo|{"type":"path","url":"extensions/*/"}
my_public_repo|{"type":"vcs","url":"https://github.com/my/repo"}
https://getcomposer.org/doc/03-cli.md#modifying-repositories