专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏

ubcctlt/mediawiki Docker 镜像 - 轩辕镜像

mediawiki
ubcctlt/mediawiki
自动构建
基于MediaWiki官方Docker仓库定制的Docker镜像,默认使用Vector皮肤,基于PHP-Apache基础镜像,采用稳定版MediaWiki,专为生产环境优化配置。
4 收藏0 次下载activeubcctlt镜像
🚀专业版镜像服务,面向生产环境设计
中文简介版本下载
🚀专业版镜像服务,面向生产环境设计

MediaWiki Docker镜像

本镜像主要基于MediaWiki官方Docker仓库构建,主要修改如下:

  • 默认使用"Vector"皮肤
  • 基于PHP-Apache Docker镜像
  • 使用稳定版MediaWiki
  • 针对生产环境进行定制

配置选项

通过以下环境变量生成LocalSettings.php并自动安装MediaWiki。若未提供这些变量,需通过安装向导完成配置。更多配置说明参见Manual:Configuration_settings。

  • -e MEDIAWIKI_SITE_SERVER=(必填,设置服务器主机及协议,如[***];配置$wgServer)
  • -e MEDIAWIKI_SITE_NAME=(默认MediaWiki;配置$wgSitename)
  • -e MEDIAWIKI_SITE_LANG=(默认en;配置$wgLanguageCode)
  • -e MEDIAWIKI_ADMIN_USER=(默认admin;配置默认管理员用户名)
  • -e MEDIAWIKI_ADMIN_PASS=(默认rosebud;配置默认管理员密码)
  • -e MEDIAWIKI_UPDATE=true(默认false;运行php maintenance/update.php)
  • -e MEDIAWIKI_SLEEP=(默认0;延迟容器启动,适用于Docker Compose)
  • -e MEDIAWIKI_EXTENSIONS(默认空;指定启用的扩展,逗号分隔,扩展在镜像构建时安装)
  • -e PARSOID_DOMAIN(默认localhost;Parsoid域名)
  • -e RESTBASE_URL(默认未设置;RestBase实例URL,未设置则不配置)
  • -e LDAP_DOMAIN(默认未设置;LDAP域名,如CWL)
  • -e LDAP_SERVER(默认未设置;LDAP服务器地址)
  • -e LDAP_PORT(默认389;LDAP服务器端口)
  • -e LDAP_ENCRYPTION_TYPE(默认clear;LDAP连接加密类型,可选clear、ldapi、tls、ssl)
  • -e LDAP_BASE_DN(默认ou=Users,ou=LOCAL,dc=domain,dc=local;LDAP搜索基础DN)
  • -e LDAP_USER_BASE_DN(默认ou=Users,ou=LOCAL,dc=domain,dc=local;用户信息LDAP基础DN)
  • -e LDAP_SEARCH_STRINGS(默认未设置;LDAP搜索字符串)
  • -e LDAP_SEARCH_ATTRS(默认未设置;LDAP搜索属性)
  • -e LDAP_PROXY_AGENT(默认未设置;LDAP代理代理)
  • -e LDAP_PROXY_PASSWORD(默认未设置;LDAP代理代理密码)
  • -e LDAP_USERNAME_ATTR(默认cn;用户名LDAP属性)
  • -e LDAP_REALNAME_ATTR(默认displayname;真实姓名LDAP属性)
  • -e LDAP_EMAIL_ATTR(默认mail;电子邮件LDAP属性)
  • -e MEDIAWIKI_MAIN_CACHE(默认CACHE_NONE;主缓存)
  • -e MEDIAWIKI_MEMCACHED_SERVERS(默认[];Memcached服务器列表,逗号分隔,如["memcached:", "memcached1:"])
  • -e UBC_AUTH(默认未设置;设为true启用UBC特定认证扩展)
  • -e AUTO_CREATED_USER_REDIRECT(默认未设置;设为Wiki页面如Main_page,新用户首次通过LDAP登录时重定向至此页面)

上述变量将生成MediaWiki所需的LocalSettings.php文件。若挂载共享卷(见下文“共享卷”),生成的LocalSettings.php会自动移至共享卷以便编辑。若数据目录中存在CustomSettings.php,则会在生成的LocalSettings.php末尾添加require('/data/CustomSettings.php');。

Docker Compose

bash
docker-compose up

可通过docker-compose.yaml中的环境变量进行定制。

使用数据库服务器

通过以下环境变量连接外部数据库服务器:

  • -e MEDIAWIKI_DB_TYPE=...(默认mysql,也可设为postgres)
  • -e MEDIAWIKI_DB_HOST=...(默认链接数据库容器的地址)
  • -e MEDIAWIKI_DB_PORT=...(默认链接数据库容器的端口或指定数据库类型的默认端口)
  • -e MEDIAWIKI_DB_USER=...(默认根据数据库类型,mysql为root,postgres为postgres)
  • -e MEDIAWIKI_DB_PASSWORD=...(默认链接数据库容器的密码)
  • -e MEDIAWIKI_DB_NAME=...(默认mediawiki)
  • -e MEDIAWIKI_DB_SCHEMA...(默认mediawiki,仅适用于PostgreSQL)

若指定的MEDIAWIKI_DB_NAME在MySQL服务器上不存在,且MEDIAWIKI_DB_USER有足够权限,容器启动时会自动创建该数据库。

连接外部数据库服务器示例:

bash
docker run --name some-mediawiki \
    -e MEDIAWIKI_DB_HOST=10.0.0.1 \
    -e MEDIAWIKI_DB_PORT=3306 \
    -e MEDIAWIKI_DB_USER=app \
    -e MEDIAWIKI_DB_PASSWORD=secure \
    wikimedia/mediawiki

共享卷

运行docker run时使用-v参数挂载共享卷,MediaWiki容器会自动查找LocalSettings.php文件及images、skins、extensions文件夹。找到后会创建符号链接,替换默认MediaWiki安装中的对应文件或文件夹。这便于配置(LocalSettings.php)、备份上传文件(images)及定制(skins和extensions)。

强烈建议挂载共享卷,使上传文件和图片存储在容器外部。

默认共享卷需挂载至容器的/data目录,可通过-e MEDIAWIKI_SHARED=/new/data/path修改路径。

若检测到composer.lock和composer.json文件,容器会自动下载composer并运行composer install,用于安装额外扩展、皮肤和依赖。

访问MediaWiki

通过浏览器访问http://localhost:8080或[***]。

开发环境设置

首次启动应用:

bash
docker-compose up -d

启动后,运行以下命令添加user_cwl_extended_account_data表:

bash
docker cp ./dev/add_table.sql mediawiki-docker_db_1:/add_table.sql
docker exec -it mediawiki-docker_db_1 /bin/bash -c "mysql -u root -ppassword mediawiki < /add_table.sql"

在docker-compose文件中取消注释行- ./LocalSettings.php:/var/www/html/LocalSettings.php。

最后重启所有容器:

bash
docker-compose down
docker-compose up -d

添加新LDAP用户

使用首选LDAP GUI工具连接LDAP容器,地址localhost:1389,登录名cn=admin,dc=example,dc=org,密码admin。

添加新用户时,确保使用simpleSecurityObject、inetOrgPerson和ubcEdu类。

启用LDAP认证后的定制

  • 定制登录按钮:修改页面MediaWiki:Pluggableauth-loginbutton-label(默认标签“Log in with PluggableAuth”)。
  • 定制登录帮助消息:修改页面MediaWiki:Userlogin-helplink2和MediaWiki:Helplogin-url(默认超链接“Help with logging in”指向MediaWiki帮助页面)。
  • 定制“首选项”页面中的电子邮件帮助消息:编辑页面MediaWiki:Prefs-help-email(默认消息提及电子邮件用于密码重置,在LDAP认证下不相关)。

定制Caliper actor数据

默认登录和未登录用户的Caliper actor参见mediawiki-extensions-caliper repo的CaliperActor对象。

可通过SetCaliperActorObject钩子定制Caliper actor。本容器在CustomHooks.php中通过SetCaliperActor函数使用此钩子。

默认SetCaliperActor函数使用UBC puid作为标识符,CALIPER_LDAP_ACTOR_HOMEPAGE环境变量作为基础字符串,因此actor标识符格式为CaliperLDAPActorHomepage/LDAP_PUID(如[***])。可根据机构需求、部署设置和/或授权方式移除该函数并创建自定义函数。

容器调试

修改容器内文件:

bash
docker exec -it CONTAINER_ID sh
vi FILE_TO_CHANGE

可能需要重启容器使修改生效:

bash
docker-compose restart SERVICE_NAME

其中SERVICE_NAME可为docker-compose中的任意服务,如nodeservices、web、db等。容器内的修改会持久化。

版本和发布标签

REL*分支跟踪上游MediaWiki发布版本。当仓库更新并准备部署时,应创建新标签,格式为BRANCH_NAME + BUILD_NUMBER,如REL1_30_B2或REL1_31_B5,其中BUILD_NUMBER按顺序递增。node-services仓库也遵循相同规则。

查看更多 mediawiki 相关镜像 →
mediawiki logo
mediawiki
by library
官方
MediaWiki是一款用PHP编写的免费开源维基软件包。
60910M+ pulls
上次更新:12 天前
amd64/mediawiki logo
amd64/mediawiki
by amd64
MediaWiki是一款用PHP编写的免费开源维基软件包,适用于创建和管理维基网站,如维基百科等。
1M+ pulls
上次更新:13 天前
ppc64le/mediawiki logo
ppc64le/mediawiki
by ppc64le
MediaWiki是一款用PHP编写的自由开源维基包,用于搭建维基网站。
100K+ pulls
上次更新:12 天前
i386/mediawiki logo
i386/mediawiki
by i386
MediaWiki是一款采用PHP编写的开源免费wiki软件包,主要用于创建和管理wiki网站。
100K+ pulls
上次更新:13 天前
arm64v8/mediawiki logo
arm64v8/mediawiki
by arm64v8
MediaWiki是一款用PHP编写的免费开源维基软件包。
2100K+ pulls
上次更新:13 天前
arm32v7/mediawiki logo
arm32v7/mediawiki
by arm32v7
MediaWiki是一个用PHP编写的免费开源wiki软件包。
3100K+ pulls
上次更新:13 天前

轩辕镜像配置手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

登录仓库拉取

通过 Docker 登录认证访问私有仓库

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

Docker Compose

Docker Compose 项目配置

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

宝塔面板

在宝塔面板一键配置镜像

群晖

Synology 群晖 NAS 配置

飞牛

飞牛 fnOS 系统配置镜像

极空间

极空间 NAS 系统配置服务

爱快路由

爱快 iKuai 路由系统配置

绿联

绿联 NAS 系统配置镜像

威联通

QNAP 威联通 NAS 配置

Podman

Podman 容器引擎配置

Singularity/Apptainer

HPC 科学计算容器配置

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

专属域名拉取

无需登录使用专属域名

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 访问,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像支持哪些镜像仓库?

专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等;免费版仅支持 docker.io。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
ubcctlt/mediawiki
官方博客Docker 镜像使用技巧与技术博客
热门镜像查看热门 Docker 镜像推荐
一键安装一键安装 Docker 并配置镜像源
提交工单
免费获取在线技术支持请 提交工单,官方QQ群:13763429 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
免费获取在线技术支持请提交工单,官方QQ群: 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
官方邮箱:点击复制邮箱
©2024-2026 源码跳动
官方邮箱:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.
轩辕镜像 官方专业版 Logo
轩辕镜像轩辕镜像官方专业版
首页个人中心搜索镜像
交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题
其他
关于我们网站地图

官方QQ群: 13763429