ubuntu18.04使用docker搭建mediawiki+VisualEditor

1.安装docker

sudo apt-get remove docker docker-engine docker.io containerd runc
sudo apt-get update
sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo apt-key fingerprint 0EBFCD88
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

2.使用docker拉取镜像

# 拉取mysql镜像
docker pull mysql:5.7.29

# 拉取mediawiki镜像
docker pull mediawiki:1.34

# 拉取parsoid镜像
docker pull thenets/parsoid:0.11

3.运行parsoid容器

# --add-host是给容器的/etc/hosts文件添加ip别名配置 
docker run --name parsoid --add-host mediawiki:172.17.0.4 -p 8000:8000 -e PARSOID_DOMAIN_mediawiki=http://mediawiki/api.php -d thenets/parsoid:0.11

此时在浏览器下输入你的ip地址:8000,应该可以看到如下界面:

如果看不到可以检查一下端口有没有开放,或者直接关闭防火墙

4.运行mysql容器

docker run --name mysql -p 3306:3306 -v /data/mediawiki/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=190539 -d mysql:5.7.29

这里的MYSQL_ROOT_PASSWORD指定的是mysql的root用户的密码

启动完成后可以进入mysql容器:

docker exec -it mysql /bin/bash

输入命令连接mysql:

mysql -uroot -p123456

连接成功就说明mysql没有什么问题

5.启动mediawiki

docker run --name mediawiki -v /data/mediawiki/html:/var/www/html -v /data/mediawiki/php:/usr/local/etc/php -p 80:80 --link mysql:mysql --link parsoid:parsoid -d mediawiki:1.35

浏览器访问你的ip,正常情况下应该出现以下界面:

6.设置mediawiki

点击上图中的set up the wiki

前面的页面直接下一步,到这里需要修改主机和填写数据库密码,这里直接填mysql,数据库密码是之前启动mysql设置的密码

剩下的就没有什么重要的了,自己配置就可以了

完成配置之后会自动下载一个LocalSettings.php

需要将这个文件导入到mediawiki容器中

docker cp LocalSettings.php mediawiki:/var/www/html/

浏览器再访问ip地址就是mediawiki的首页了

7.mediawiki文件上传配置

首先要进入容器进行:

docker exec -it mediawiki /bin/bash

7.1开启文件上传

LocalSettings.php

#开启文件上传功能
$wgEnableUploads = true;

7.2修改文件上传的支持类型

includes/DefaultSettings.php

#修改支持上传的文件类型
$wgFileExtensions = [ 'png', 'gif', 'jpg', 'jpeg', 'webp' ];

7.3修改上传文件大小限制

7.3.1修改mediawiki的文件上传配置

includes/DefaultSettings.php

# 文件大小超出限制是否给出警告信息
$wgUploadSizeWarning = false;
# 只能能够上传文件的最大size
$wgMaxUploadSize = 1024 * 1024 * 100; # 100MB

7.3.2修改php的文件上传配置

在/var/www/html目录下创建一个info.php文件,然后:

echo "<?php phpinfo(); ?>" >> /var/www/html/info.php;

打开浏览器访问 你的ip/info.php ,在显示页面找到如下内容:

第一个是php配置文件默认加载路径,第二个是php配置文件实际加载路径,因为实际加载路径为none,所以php使用的是默认加载路劲下的php.ini文件,进入这个目录

cd /usr/local/etc/php

我的这个目录下没有php.ini文件

将php.ini-development重命名为php.ini

mv php.ini-development php.ini

修改php.ini(需要重启mediawiki容器才能生效)

upload_max_filesize = 8M
post_max_size = 8M

mediawiki会取DefaultSettings.php中的$wgMaxUploadSize、php.ini中的upload_max_filesize和php.ini中的post_max_size的最小值作为最终的上传文件大小限制。

8.mediawiki配置可视化编辑器VisualEditor

8.1 配置parsoid

查看mediawiki容器的ip:

docker inspect mediawiki

进入parsoid容器:

docker exec -it parsoid /bin/bash

将mediawiki的ip配置别名:

如果parsoid重启这里的hosts文件就会丢失修改,需要重新配置

echo "127.17.0.4 mediawiki" >> /etc/hosts

parsoid服务的配置文件在/var/lib/parsoid/config.yaml,按照上面的步骤做这里就不需要修改。

8.2 配置mediawiki

LocalSettings.php

wfLoadExtension( 'VisualEditor' );

// Enable by default for everybody
$wgDefaultUserOptions['visualeditor-enable'] = 1;

// Optional: Set VisualEditor as the default for anonymous users
// otherwise they will have to switch to VE
// $wgDefaultUserOptions['visualeditor-editor'] = "visualeditor";

// Don't allow users to disable it
$wgHiddenPrefs[] = 'visualeditor-enable';

// OPTIONAL: Enable VisualEditor's experimental code features
#$wgDefaultUserOptions['visualeditor-enable-experimental'] = 1;
$wgVirtualRestConfig['modules']['parsoid'] = array(
    // URL to the Parsoid instance
    // Use port 8142 if you use the Debian package
    'url' => 'http://parsoid:8000',
    // Parsoid "domain", see below (optional)
    'domain' => 'mediawiki',
    // Parsoid "prefix", see below (optional)
    'prefix' => 'mediawiki'
);

之后再访问mediawiki,点击编辑就可以使用VisualEditor编辑了

9.mediawiki添加公式支持

 

10.mediawiki配置视频播放支持

 

11.修改登陆注册框的提示语

/var/www/html/languages/i18n/zh-hans.json,在这个文件里搜,改相应的文字就好了

12.docker设置自动重启

docker update --restart=always 容器名

13.设置时间,linux下的时区默认是有问题的

 cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值