什么是 MediaWiki ?
MediaWiki
是免费和开源的wiki
软件。它最初由Magnus Manske
开发并由Lee Daniel Crocker
改进,可在许多网站上运行,包括Wikipedia
、Wiktionary
和Wikimedia Commons
。它是用PHP
编程语言编写的,并将内容存储到数据库中。与基于类似许可和架构的WordPress
一样,它已成为同类软件中的主导软件。
前言
老苏写教程一般都是在 DS3617xs
上安装、卸载、以及各种折腾
这一次安装 mediawiki
也不例外,但其在运行后会自动终止,日志中会出现下面的错误
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 |
端口
# 查看端口占用
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