论坛对于好多年轻人都没见过,我都没有用过。但是找来找去都找不到一个合适的留言版,所以索性搭一个简单的论坛,让大家也开开眼界,哈哈。
准备的材料是三个Docker镜像。
- phpmyadmin
- mariadb
- flarum
关于下载镜像的方法
phpmyadmin
搭建phpmyadmin其实就是下载镜像,然后设置端口,一直下一步就可以了。但是要注意添加一个小小的环境变量PMA_ARBITRARY=1,不然看不到输入IP地址的框,
可以通过代码下载 phpmyadmin和生成容器
docker pull phpmyadmin
docker run –name myadmin -d -e PMA_ARBITRARY=1 -p 8088:80 phpmyadmin
mariadb
搭建mariadb其实也是很简单,设置端口和映射文件夹,环境变量设置数据库密码
docker pull mariadb
docker run –name mariadb -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -v /volume1/docker/mariadb/data:/var/lib/mysql -d mariadb
flarum
可以通过代码下载和生成容器
docker pull mondedie/flarum
docker run -d
--name Flarum
-e DEBUG=false
-e FORUM_URL=http://xxx.xxx.xxx.xxx:8888
-e DB_HOST=xxx.xxx.xxx.xxx
-e DB_NAME=flarum
-e DB_USER=flarum
-e DB_PASS=12345
-e DB_PREF=flarum_
-e DB_PORT=3307
-e FLARUM_ADMIN_USER=admin
-e FLARUM_ADMIN_PASS=12345
-e FLARUM_ADMIN_MAIL=xxxx@xxxx.com
-v /volume1/docker/flarum/assets:/flarum/app/public/assets
-v /volume1/docker/flarum/extensions:/flarum/app/extensions
-v /volume1/docker/flarum/storagelogs:/flarum/app/storage/logs
-v /volume1/docker/flarum/nginx:/etc/nginx/flarum
-p 8888:8888
mondedie/flarum
可以参考Discourse最佳平替!使用NAS的Docker功能部署优雅简洁的轻论坛项目『Flarum』_NAS存储_什么值得买
使用phpmyadmin增加空数据库 flarum
增加4个文件夹,用于跟镜像文件夹对应
/volume1/docker/flarum/assets:/flarum/app/public/assets
/volume1/docker/flarum/extensions:/flarum/app/extensions
/volume1/docker/flarum/storagelogs:/flarum/app/storage/logs
/volume1/docker/flarum/nginx:/etc/nginx/flarum
设置一些环境变量
DEBUG=false
FORUM_URL=http://xxx.xxx.xxx.xxx:8888
DB_HOST=xxx.xxx.xxx.xxx
DB_NAME=flarum -e DB_USER=flarum
DB_PASS=12345 -e DB_PREF=flarum_
DB_PORT=3307
FLARUM_ADMIN_USER=admin
FLARUM_ADMIN_PASS=12345
FLARUM_ADMIN_MAIL=xxxx@xxxx.com
最后将端口设置为8888
flarum设置中文
新增旁边的三角型,输入/bin/sh
再输入以下命令,等下载完成,用管理员登录论坛
cd /flarum/app
composer require flarum-lang/chinese-simplified
登录后,选择后台管理,英文也是这个位置
会多出一个简体中文的语言包,选择开启
在这个位置,选择语言
解决注册账号要验证邮箱问题
注册的时候要输入邮箱,并且要通过验证,这个账号才能留言和回复。但是大大增加用户使用难度。所以要决定改一下
这个修改要在数据库里面,将用户表的is_email_confirmed字段设置默认值为1
或者执行查询命令 alter table users alter column is_email_confirmed set default 1;
最后注册用户还是提示错误,但是使用正常