使用Docket部署Mediawiki

下载mediawiki

wget http://download.bobycloud.com/linux/mediawiki-1.37.1.zip

解压并更换目录

# mediawiki html
mkdir /data/dockers/mediawiki/html
cd /data/dockers/mediawiki/html
unzip mediawiki-1.37.1.zip

# mediawiki db
mkdir /data/dockers/mediawiki/db/

创建compose的部署文件

 # MediaWiki with MariaDB
 #
 # Access via "http://localhost:8080"
 #   (or "http://$(docker-machine ip):8080" if using docker-machine)
 version: '3'
 services:
   mediawiki:
     image: mediawiki
     restart: always
     ports:
       - 8095:80
     links:
       - database
     volumes:
       - /data/dockers/mediawiki/html:/var/www/html
   database:
     image: mariadb
     restart: always
     environment:
       # @see https://phabricator.wikimedia.org/source/mediawiki/browse/master/includes/DefaultSettings.php
       MYSQL_DATABASE: bytebirth_wiki
       MYSQL_USER: bytebirthWiki
       MYSQL_PASSWORD: ByteBirth@wiki
       MYSQL_RANDOM_ROOT_PASSWORD: 'yes'
     volumes:
       - /data/dockers/mediawiki/db:/var/lib/mysql

执行docker-compose文件

# 启动
docker-compose -f stack.yml up -d

# 关闭
docker stop $(docker ps -qa)
docker rm $(docker ps -qa)

数据库配置

注意:
​ 数据库的主机需要填写产生的容器id

docker ps -a
   1b32906c9617   mariadb     "docker-entrypoint.s…"                 mediawiki-database-1

示例填写如下: mediawiki-database-1

配置wiki

拷贝配置到mediawiki的根目录
​ 经过一系列导引操作后,会生成一个名为“LocalSettings.php”的文件,将其下载后,再拷贝到mediawiki的根目录下才可以。

mv /home/huawei/LocalSettings.php ./

一些操作

1、修改导航栏
命令
http://xxxx/index.php/MediaWiki:Sidebar
格式

1、非树型

* :一级目录

​ 作为标题,不能添加链接

**: 二级文章

格式:[页面链接]|[页面的显示名];如【** 测试|第一课】表示”页面链接地址为测试,而显示名称为第一课“

* navigation
** mainpage|mainpage-description
** recentchanges-url|recentchanges
** randompage-url|randompage
** helppage|help-mediawiki
* SEARCH
* TOOLBOX
* LANGUAGES

* JAVA
** 测试|第一课

如:

* navigation
** mainpage|mainpage-description
* NowNow
** NowNow/协议定义|协议定义
** NowNow/心跳接口|心跳接口

前面的【NowNow/协议定义】是文章的路径,【|】后面的【协议定义】是标题名称

配置邮箱

$wgSMTP = [
    'host'     => "ssl://smtp.126.com", // qq 企业邮箱要求加密连接
    'IDHost'   => "wiki.ddd.com",
    'port'     => 465,
    'auth'     => true,                       // 需要登录
    'username' => "fwwwww@126.com",     // SMTP 认证的用户名.
    'password' => "wwfwf"                       // SMTP 认证的密码.
];