轻量级知识协作平台搭建:Docker + MediaWiki入门教程

轻量级知识协作平台搭建:Docker + MediaWiki 入门教程

  • 一、mediawiki介绍
    • [1.1 mediawiki简介](#1.1 mediawiki简介)
    • [1.2 mediawiki特点](#1.2 mediawiki特点)
  • 二、本地环境介绍
    • [2.1 本地环境规划](#2.1 本地环境规划)
    • [2.2 本次实践介绍](#2.2 本次实践介绍)
  • 三、本地环境检查
    • [3.1 检查Docker服务状态](#3.1 检查Docker服务状态)
    • [3.2 检查Docker版本](#3.2 检查Docker版本)
    • [3.3 检查docker compose 版本](#3.3 检查docker compose 版本)
  • 四、下载mediawiki镜像
  • 五、部署mediawiki应用
    • [5.1 创建部署目录](#5.1 创建部署目录)
    • [5.2 编辑mediawiki部署文件](#5.2 编辑mediawiki部署文件)
    • [5.3 创建mediawiki容器](#5.3 创建mediawiki容器)
    • [5.4 检查mediawiki容器状态](#5.4 检查mediawiki容器状态)
  • 六、mediawiki初始化安装
    • [6.1 进入mediawiki初始页](#6.1 进入mediawiki初始页)
    • [6.2 选择语言](#6.2 选择语言)
    • [6.3 环境检查](#6.3 环境检查)
    • [6.4 数据库配置](#6.4 数据库配置)
    • [6.5 设置登录账号](#6.5 设置登录账号)
    • [6.6 开始安装](#6.6 开始安装)
    • [6.7 复制LocalSettings.php文件](#6.7 复制LocalSettings.php文件)
    • [6.8 访问mediawiki首页](#6.8 访问mediawiki首页)

一、mediawiki介绍

1.1 mediawiki简介

MediaWiki 是一个用 PHP 编写的免费开源 wiki 软件包。它是维基百科和其他维基媒体项目的平台,每月有数亿人使用。MediaWiki 已本地化为 350 多种语言,其可靠性和强大的功能集为其赢得了庞大且充满活力的第三方用户和开发人员社区。

1.2 mediawiki特点

  • 功能丰富且可扩展,在 wiki 上并具有数百个扩展;
  • 可扩展并适用于小型和大型站点;
  • 安装简单,适用于大多数硬件/软件组合;和
  • 有您的语言版本。

二、本地环境介绍

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为centos7.6。

hostname IP地址 操作系统版本 Docker版本
jeven 192.168.3.166 centos 7.6 20.10.17

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎;

2.在Docker环境下部署mediawiki工具。

三、本地环境检查

3.1 检查Docker服务状态

检查Docker服务是否正常运行,确保Docker正常运行。

bash 复制代码
[root@jeven ~]# systemctl status docker
● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
   Active: active (running) since Fri 2024-02-23 04:29:55 CST; 3 days ago
     Docs: https://docs.docker.com
 Main PID: 11772 (dockerd)
    Tasks: 75
   Memory: 9.0G
   CGroup: /system.slice/docker.service

3.2 检查Docker版本

检查Docker版本

bash 复制代码
[root@jeven ~]# docker -v
Docker version 20.10.17, build 100c701

3.3 检查docker compose 版本

检查Docker compose版本,确保2.0以上版本。

bash 复制代码
[root@jeven ~]# docker compose version
Docker Compose version v2.6.0

四、下载mediawiki镜像

从docker hub镜像仓库中拉取mediawiki镜像

bash 复制代码
[root@jeven ~]# docker pull  mediawiki:1.32
1.32: Pulling from library/mediawiki
Digest: sha256:349aeb8014b58754ac25ea022ee0c26e399ce18d756ecada7579c3f39d52c5a1
Status: Image is up to date for mediawiki:1.32
docker.io/library/mediawiki:1.32

五、部署mediawiki应用

5.1 创建部署目录

创建部署目录/data/mediawiki

bash 复制代码
mkdir -p /data/mediawiki/{data,uploads}   && cd /data/mediawiki

目录授权

bash 复制代码
chmod -R 777 /data/mediawiki/

5.2 编辑mediawiki部署文件

本次实践部署使用docker compose方式,编辑docker-compose.yaml部署文件。

yaml 复制代码
version: "3"

services:
  # 如果你使用数据库,可以参考下面的地址,或者我文章中标记有 Docker 的历史文章
  # https://docs.docker.com/samples/library/mediawiki/
  mediawiki:
    restart: always
    image: mediawiki:1.32
    labels:
      - "traefik.enable=true"
      - "traefik.frontend.rule=Host:mediawiki.lab.io"
      - "traefik.frontend.passHostHeader=true"
      - "traefik.frontend.entryPoints=http,https"
#    networks:
#      - traefik
    expose:
      - 80
    ports:
      - 7880:80
    volumes:
      # 默认上传位置
      - ./uploads/images:/var/www/html/images
      # 默认 SQLite 储存位置
      - ./data:/var/www/data
      # 当初始化安装完毕之后,将配置文件下载并保存到下面的位置,
      # 并去掉注释,重启应用
      # - ./LocalSettings.php:/var/www/html/LocalSettings.php

5.3 创建mediawiki容器

使用docker-compose.yaml文件创建mediawiki容器

bash 复制代码
[root@jeven mediawiki]# docker compose up -d
[+] Running 2/2
 ⠿ Network mediawiki_default        Created                                                                                                     0.0s
 ⠿ Container mediawiki-mediawiki-1  Started                                                                                                     0.7s

5.4 检查mediawiki容器状态

检查mediawiki容器状态,确保mediawiki容器正常启动。

bash 复制代码
[root@jeven mediawiki]# docker compose ps
NAME                    COMMAND                  SERVICE             STATUS              PORTS
mediawiki-mediawiki-1   "docker-php-entrypoi..."   mediawiki           running             0.0.0.0:7880->80/tcp, :::7880->80/tcp

六、mediawiki初始化安装

6.1 进入mediawiki初始页

访问地址:http://192.168.3.166:6600,将IP替换为自己服务器IP地址,进入进入mediawiki初始页,自定义注册账号和密码。如果无法访问,则检查服务器防火墙是否设置,云服务器的安全组端口是否放行等。

>点击图中所示位置,开始mediawiki的初始化配置。

6.2 选择语言

选择系统语言,默认是中文语言,点击"继续",开始下一步安装。

6.3 环境检查

将简单检查当前环境是否适合安装MediaWiki,点击"继续",开始下一步。

6.4 数据库配置

MediaWiki支持多种数据库,如MariaDB、PostgreSQL和SQLite等,这里我们选择轻量级数据库SQLite,完成快速部署。

6.5 设置登录账号

自定义设置登录账号和密码,点击"继续",下一步。

6.6 开始安装

点击"继续",开始初始化安装。


完成初始化安装

6.7 复制LocalSettings.php文件

安装程序自动生成了LocalSettings.php文件,会自动在浏览器下载该文件,如果浏览器没有下载,则在该界面手动点击下载LocalSettings.php文件。我们将此文件拷贝到宿主机的部署目录中,使用docker cp命令将LocalSettings.php复制到容器的/var/www/html目录下,与index.php文件都在此目录下。

复制LocalSettings.php文件

bash 复制代码
docker cp LocalSettings.php mediawiki-mediawiki-1:/var/www/html

重启容器

bash 复制代码
docker compose restart

6.8 访问mediawiki首页

刷新页面,可以访问到mediawiki首页。

相关推荐
小夏卷编程18 小时前
Ubuntu 20.04.4 宝塔 docker showdoc v3.2 更新到v3.7.3
运维·docker·容器
JEECG低代码平台18 小时前
JeecgBoot低代码平台 Docker 部署 OnlyOffice 文档服务完整指南
低代码·docker·容器
生活爱好者!19 小时前
NAS帮我找回童年的快乐!部署 小游戏
运维·服务器·docker·容器·娱乐
自在极意功。20 小时前
nginx和docker面试题
运维·nginx·docker
不做超级小白21 小时前
执行docker命令时自动启动Docker Desktop?一个小工具让开发体验更丝滑
windows·docker
222you21 小时前
Ubuntu当中的Docker安装和镜像管理
ubuntu·spring cloud·docker
心易行者1 天前
别再说“在我的机器上能跑”了!Docker 入门指南,专治各种环境不服
运维·人工智能·docker·容器
zhim001 天前
【保姆级教程】使用 Docker 部署 PostgreSQL + pgvector(含踩坑指南)
linux·docker
进击切图仔1 天前
ROS 跨机通信与 Docker 多机环境搭建
运维·docker·容器
切糕师学AI1 天前
Kubernetes 中的 Informer 机制
云原生·容器·kubernetes·informer