PassNAT LogoPassNAT

开源MediaWiki本地部署教程,Docker快速搭建个人维基百科系统,内网穿透远程访问

作者

小编

发布时间

Curving abstract shapes with an orange and blue gradient

项目介绍

MediaWiki 是一款免费开源的维基百科引擎,采用 PHP 编写而成。作为维基百科及其他维基媒体项目的核心平台,每月被数亿用户访问。这个强大的系统已被本地化为超过 350 种语言版本,以其卓越的稳定性和丰富的功能特性赢得了全球开发者和用户的信赖。

MediaWiki 具备以下特点:

功能丰富且易于扩展,支持数百个第三方插件和自定义功能

高度可扩展,适用于小型个人维基到大型企业知识库

安装简便,兼容大多数硬件和软件环境

多语言支持,覆盖全球用户

无论你是想搭建个人知识库、企业内部文档系统还是社区百科全书,MediaWiki 都能满足你的需求。

项目地址:点我跳转

部署安装

如需在外网也能访问你的 MediaWiki 系统,建议配置内网穿透工具。可以前往帕斯内网穿透注册账号,这样就能随时随地访问你的维基系统。具体操作步骤可以参考这个教程

使用 Docker Compose 快速部署

MediaWiki 官方提供了开箱即用的 Docker Compose 配置,让技术小白也能轻松搭建。

第一步:复制配置文件

将以下配置保存为 `docker-compose.yml` 文件:

1version: '3'
2services:
3 mediawiki:
4 image: docker-registry.wikimedia.org/dev/bookworm-php83-fpm:1.0.0
5 user: "${MW_DOCKER_UID}:${MW_DOCKER_GID}"
6 volumes:
7 - ./:/var/www/html/w:cached
8 env_file:
9 - '.env'
10 environment:
11 COMPOSER_CACHE_DIR: '/var/www/html/w/cache/composer'
12 MW_SERVER: 'http://localhost:${MW_DOCKER_PORT:-8080}'
13 MW_DOCKER_PORT: "${MW_DOCKER_PORT:-8080}"
14 MW_SCRIPT_PATH: '/w'
15 MW_DBPATH: '/var/www/html/w/cache/sqlite'
16 MW_DBTYPE: 'sqlite'
17 MW_LANG: 'en'
18 MW_USER: '${MEDIAWIKI_USER:-Admin}'
19 MW_PASS: '${MEDIAWIKI_PASSWORD:-dockerpass}'
20 MW_SITENAME: 'MediaWiki'
21 MW_LOG_DIR: /var/www/html/w/cache
22 XDEBUG_ENABLE: '${XDEBUG_ENABLE:-true}'
23 XHPROF_ENABLE: '${XHPROF_ENABLE:-true}'
24
25 mediawiki-web:
26 image: docker-registry.wikimedia.org/dev/bookworm-apache2:1.0.1
27 user: "${MW_DOCKER_UID}:${MW_DOCKER_GID}"
28 ports:
29 - "${MW_DOCKER_PORT:-8080}:8080"
30 volumes:
31 - ./:/var/www/html/w:cached
32 env_file:
33 - '.env'
34 environment:
35 MW_LOG_DIR: /var/www/html/w/cache
36 MW_DOCKER_PORT: "${MW_DOCKER_PORT:-8080}"
37
38 mediawiki-jobrunner:
39 image: docker-registry.wikimedia.org/dev/bookworm-php83-jobrunner:1.0.0
40 user: "${MW_DOCKER_UID}:${MW_DOCKER_GID}"
41 volumes:
42 - ./:/var/www/html/w:cached
43 env_file:
44 - '.env'
45 environment:
46 MW_LOG_DIR: /var/www/html/w/cache
47 MW_INSTALL_PATH: /var/www/html/w

第二步:打开你的 NAS 设备或服务器

在飞牛 NAS、群晖或其他 NAS 设备上,进入 Docker 管理界面。

第三步:启动容器

将上述配置文件上传到你的服务器,然后运行以下命令启动 MediaWiki:

1docker-compose up -d

等待容器启动完成即可。

端口配置说明

默认情况下,MediaWiki 会在 `8080` 端口运行。如果你的系统中该端口已被占用,可以修改 `docker-compose.yml` 中的以下部分:

1ports:
2 - "你的端口号:8080"

例如改为 `'9090:8080'` 表示外部访问 9090 端口,内部仍然是 8080。

环境变量配置

创建一个 `.env` 文件来配置 MediaWiki 的参数:

必须设置:

`MEDIAWIKI_USER`: 管理员用户名(默认:Admin)

`MEDIAWIKI_PASSWORD`: 管理员密码(默认:dockerpass)- 强烈建议修改为强密码

可选设置:

`MW_DOCKER_PORT`: 访问端口(默认:8080)

`MW_DOCKER_UID`: Docker 用户 ID(默认:1000)

`MW_DOCKER_GID`: Docker 用户组 ID(默认:1000)

`MW_LANG`: 系统语言(默认:en,可改为 zh 使用中文)

`MW_SITENAME`: 维基网站名称(默认:MediaWiki)

`XDEBUG_ENABLE`: 是否启用调试模式(默认:true)

其他参数保持默认即可,直接启动就好了。

第四步:访问你的 MediaWiki

容器启动成功后,打开浏览器访问:

1http://你的服务器IP:8080

就能看到 MediaWiki 的欢迎页面了。使用你在环境变量中设置的用户名和密码登录,即可开始创建你的维基内容。

数据持久化

MediaWiki 的所有数据(包括页面内容和配置)都会保存在项目目录下的 `cache` 文件夹中。建议定期备份这个目录以防数据丢失。

本篇教程结束。现在你已经拥有了一个功能完整的 MediaWiki 系统,可以用来构建个人知识库或团队文档平台了!