群晖上安装MediaWiki的简单记录
什么是 MediaWiki ?
MediaWiki是免费和开源的wiki软件。它最初由Magnus Manske开发并由Lee Daniel Crocker改进,可在许多网站上运行,包括Wikipedia、Wiktionary和Wikimedia Commons。它是用PHP编程语言编写的,并将内容存储到数据库中。与基于类似许可和架构的WordPress一样,它已成为同类软件中的主导软件。
前言
老苏写教程一般都是在 DS3617xs 上安装、卸载、以及各种折腾

这一次安装 mediawiki 也不例外,但其在运行后会自动终止,日志中会出现下面的错误
1 | Function not implemented: AH00141: Could not initialize random number generator |
关于这个问题在安装 Nextcloud 、Monica 时都遇到过,原因是镜像采用了 apache 做 Web 服务,而群晖内核版本太低导致的问题。
Your NAS is using a linux kernel < 3.16 and is missing some dependencies required by apache2 now.
老苏查询了这台 DS3617xs 的内核版本为 3.10,显然不满足要求

但老苏又不死心,查了另一台 DS918+ 的内核版本

看来只能换机器折腾了,除此之外老苏也没有更好的办法
安装
mediawiki 涉及到两个镜像,比较简单的安装方式是编排 docker-compose.yml 文件,然后用 docker-compose up -d 命令启动。
docker-compose.yml文件可以在这里找到:https://registry.hub.docker.com/_/mediawiki/
双容器还是可以用群晖的 Docker 管理器来安装,其安装步骤和 wekan 非常类似
镜像下载
在注册表中搜索 mediawiki ,选择第一个 mediawiki,版本选择 latest

mediawiki 虽然支持 MySQL 和 MariaDB 做数据库,但其提供的示例只能采用 --link 参数, mediawiki 又没有相应的环境变量可以设置数据库参数,所以老苏只好再单独安装 MariaDB
当然你也可以用
SQLite做数据库,那就只要单容器mediawiki即可
在注册表中搜索 mariadb ,选择第一个 mariadb,版本选择 latest。

安装 MariaDB
容器名称这次没有用默认的,改为了 mw-mariadb,因为这个名称后面会用到,当然你不改也可以,修改只是为了更容易识别

卷
在 docker 文件夹中,创建一个新文件夹,并将其命名为 mediawiki,再建两个子目录 mariadb 和 web,还需要在 web 中建个子目录 images

| 文件夹 | 装载路径 |
|---|---|
docker/mediawiki/mariadb |
/var/lib/mysql |

端口
1 | # 查看端口占用 |

默认端口被占用,所以改了个相邻、但是没被占用的
| 本地端口 | 容器端口 |
|---|---|
3308 |
3306 |

环境
| 可变 | 值 |
|---|---|
MYSQL_DATABASE |
数据库名称 |
MYSQL_USER |
数据库用户 |
MYSQL_PASSWORD |
数据库密码 |
MYSQL_RANDOM_ROOT_PASSWORD |
设为 yes |

如果运行正常并且不报错的话,就可以进行 MediaWiki 的安装了

安装 MediaWiki
接下来安装 MediaWiki,名字设为了 mw-wiki

卷
| 文件夹 | 装载路径 | 说明 |
|---|---|---|
docker/mediawiki/web/images |
/var/www/html/images |
存放图片 |

端口
| 本地端口 | 容器端口 |
|---|---|
3284 |
80 |

链接
点 + 号新增,容器名称中找到前面创建的 mw-mariadb,别名简单点,就叫 db

不出意外的话两个容器都启动了

运行
设置
在浏览器中输入 http://群晖IP:3284 就能看到主界面

有一堆的报错,先不用管,直接点 complete the installation 进入设置界面

如果环境检测没问题,就可以 继续

数据库设置,填入前面设置的用户和密码
数据库主机名要改为前面设置的别名,也就是
db

继续

接下来设置用户、密码
密码至少需要
10个字符,建议采用类似j%j4LYx6BG9u这样的密码

接下来是权限设置,老苏先采用了默认的,终于安装完成了

【重要】
如果你看到了上面的界面,但是
LocalSettings.php文件没自动下载,就用手动下载,下载完成后将其上传到web目录

修改容器
停止容器 mw-wiki,编辑 –> 存储空间 –> 添加文件
| 文件 | 装载路径 |
|---|---|
docker/mediawiki/web/LocalSettings.php |
/var/www/html/LocalSettings.php |

如果不做这一步,访问时还是会有一堆的错误

完成后启动容器 mw-wiki,在浏览器中输入 http://群晖IP:3284 就能看到主界面

接下来可以点右上角的 登录,开始你的 MediaWiki 之旅了
参考文档
wikimedia/mediawiki: 🌻 The collaborative editing software that runs Wikipedia. Mirror from https://gerrit.wikimedia.org/g/mediawiki/core. See https://mediawiki.org/wiki/Developer_access for contributing.
地址:https://github.com/wikimedia/mediawikiwikimedia/mediawiki-docker: Docker container for MediaWiki
地址:https://github.com/wikimedia/mediawiki-docker