群晖上安装MediaWiki的简单记录

什么是 MediaWiki ?

MediaWiki 是免费和开源的 wiki 软件。它最初由 Magnus Manske 开发并由 Lee Daniel Crocker 改进,可在许多网站上运行,包括 WikipediaWiktionaryWikimedia Commons。它是用 PHP 编程语言编写的,并将内容存储到数据库中。与基于类似许可和架构的 WordPress 一样,它已成为同类软件中的主导软件。

前言

老苏写教程一般都是在 DS3617xs 上安装、卸载、以及各种折腾

这一次安装 mediawiki 也不例外,但其在运行后会自动终止,日志中会出现下面的错误

1
Function not implemented: AH00141: Could not initialize random number generator

关于这个问题在安装 NextcloudMonica 时都遇到过,原因是镜像采用了 apacheWeb 服务,而群晖内核版本太低导致的问题。

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 虽然支持 MySQLMariaDB 做数据库,但其提供的示例只能采用 --link 参数, mediawiki 又没有相应的环境变量可以设置数据库参数,所以老苏只好再单独安装 MariaDB

当然你也可以用 SQLite 做数据库,那就只要单容器 mediawiki 即可

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

安装 MariaDB

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

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

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

端口

1
2
# 查看端口占用
netstat -tunlp | grep 端口号

默认端口被占用,所以改了个相邻、但是没被占用的

本地端口 容器端口
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/mediawiki

wikimedia/mediawiki-docker: Docker container for MediaWiki
地址:https://github.com/wikimedia/mediawiki-docker