开源论坛软件Flarum的安装

这回是居委会通知的


本文完成于 5 月底

什么是 Flarum ?

Flarum 是一个非常简单的网站讨论平台。它快速且易于使用,具有运行成功社区所需的所有功能。它还具有极强的可扩展性,可实现终极定制。

论坛虽然逐渐被淘汰了,但老苏觉得搭一个用来做知识管理,或者用来和家人分享照片、视频的快乐时光,还是挺不错的。

局域网用用就好了,不要映射到互联网,

安装

建数据库

网上能找到的都是docker-compose 的安装方式,除了 Flarum 外还需要安装 MariaDB。老苏用了群晖自带的 MariaDB 10 数据库。

phpMyAdmin 中创建名为 flarum 的空数据库。

安装镜像

在群晖上以 Docker 方式安装。

在注册表中搜索 flarum ,选择第一个 mondedie/flarum,版本选 latest

docker 文件夹中,创建一个新文件夹 flarum,并在其中建 4 个子文件夹,分别是 assetsextensionslogsnginx

文件夹 装载路径 说明
docker/flarum/assets /flarum/app/public/assets 资源目录
docker/flarum/extensions /flarum/app/extensions 扩展目录
docker/flarum/logs /flarum/app/storage/logs 日志目录
docker/flarum/nginx /etc/nginx/flarum nginx 目录

端口

本地端口不冲突就行,不确定的话可以用命令查一下

1
2
# 查看端口占用
netstat -tunlp | grep 端口号
本地端口 容器端口
8888 8888

默认并没有映射端口

需要点 + 号添加

环境

其中部分属于需要修改的,部分属于需要新增的

可变 备注
DB_HOST 数据库的地址 默认为 mariadb, 修改为群晖主机 IP,老苏的是 192.168.0.197
DB_PORT 数据库的端口 默认为 3306,修改为mariadb 10 的端口 3307
DB_NAME 数据库的库名 默认为 flarum ,保持不变
DB_USER 数据库的用户 默认为 flarum ,保持不变
DB_PASS 数据库的密码 新增,根据需要进行设置
DB_PREF 数据库的表前缀 新增,默认设为 flarum_
DEBUG 默认为 false 表示关闭调试模式 保持不变
FORUM_URL 应用的访问地址 新增,默认设为 http://群晖IP:8888
FLARUM_ADMIN_USER 管理员账号 新增
FLARUM_ADMIN_PASS 管理员密码 新增,老苏测试用的比较简单
FLARUM_ADMIN_MAIL 管理员邮件地址 新增

更多的环境变量请移步:https://github.com/mondediefr/docker-flarum

常规

名称命名为 flarum,这是为了方便后面进入容器内做设置,不改也可以,改了可以少输入几个字母

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# 新建文件夹 flarum 和 子目录
mkdir -p /volume2/docker/flarum/{assets,extensions,logs,nginx}

# 进入 flarum 目录
cd /volume2/docker/flarum

# 运行容器
docker run -d \
--restart unless-stopped \
--name flarum \
-p 8888:8888 \
-v $(pwd)/assets:/flarum/app/public/assets \
-v $(pwd)/extensions:/flarum/app/extensions \
-v $(pwd)/logs:/flarum/app/storage/logs \
-v $(pwd)/nginx:/etc/nginx/flarum \
-e DEBUG=false \
-e FORUM_URL=http://192.168.0.197:8888 \
-e DB_HOST=192.168.0.197 \
-e DB_PORT=3307 \
-e DB_NAME=flarum \
-e DB_USER=flarum \
-e DB_PASS=123456 \
-e DB_PREF=flarum_ \
-e FLARUM_ADMIN_USER=laosu \
-e FLARUM_ADMIN_PASS=123456 \
-e FLARUM_ADMIN_MAIL=wbsu2003@gmail.com \
mondedie/flarum

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
version: "3"

services:
servas:
image: mondedie/flarum
container_name: flarum
restart: unless-stopped
ports:
- "8888:8888"
volumes:
- /volume2/docker/flarum/assets:/flarum/app/public/assets
- /volume2/docker/flarum/extensions:/flarum/app/extensions
- /volume2/docker/flarum/logs:/flarum/app/storage/logs
- /volume2/docker/flarum/nginx:/etc/nginx/flarum
environment:
- DEBUG=false
- FORUM_URL=http://192.168.0.197:8888
- DB_HOST=192.168.0.197
- DB_PORT=3307
- DB_NAME=flarum
- DB_USER=flarum
- DB_PASS=123456
- DB_PREF=flarum_
- FLARUM_ADMIN_USER=laosu
- FLARUM_ADMIN_PASS=123456
- FLARUM_ADMIN_MAIL=wbsu2003@gmail.com

然后执行下面的命令,在 portainer 中执行也是可以的

1
2
3
4
5
6
7
8
9
10
# 新建文件夹 flarum 和 子目录
mkdir -p /volume2/docker/flarum/{assets,extensions,logs,nginx}

# 进入 flarum 目录
cd /volume2/docker/flarum

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

第一次需要初始化,当在日志中看到 Forum is starting. 就可以访问了

在浏览器中输入 http://群晖IP:8888 就能看到主界面

设置界面

管理员后台

中文

默认 Flarum 只支持英文,但是有中文扩展:https://discuss.flarum.org.cn/d/1211

终端机

可以进入终端机中安装

执行下面的命令

1
2
3
4
5
6
7
8
# 进目录
cd /flarum/app

# 安装中文语言包
composer require flarum-lang/chinese-simplified

# 清除缓存
php flarum cache:clear

命令行

SSH 客户端的命令行中执行下面的命令

1
2
3
4
5
6
7
8
9
10
11
# 进入容器
docker exec --user root -it flarum /bin/sh

# 进目录
cd /flarum/app

# 安装中文语言包
composer require flarum-lang/chinese-simplified

# 清除缓存
php flarum cache:clear

安装完成后,在管理员后台能看到 Languages 中多了 简体中文

进入 简体中文,默认是 Disable

改为 Enabled

Basic 中,设置为缺省的语言

保存后刷新页面

主界面刷新一下

发个帖子试试

浏览效果

参考文档

flarum/flarum: Simple forum software for building great communities.
地址:https://github.com/flarum/flarum

mondediefr/docker-flarum: Docker image of Flarum
地址:https://github.com/mondediefr/docker-flarum

简体中文语言包 - Flarum 中文社区
地址:https://discuss.flarum.org.cn/d/1211

Flarum 中文社区
地址:https://discuss.flarum.org.cn/