前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >docker搭建MediaWiki

docker搭建MediaWiki

作者头像
py3study
发布2020-03-13 09:06:01
4.3K2
发布2020-03-13 09:06:01
举报
文章被收录于专栏:python3python3

一、简介

MediaWiki 是 Wikipedia 使用的网站解决方案的开源版,以个人观点来看,Wiki 在这个时代显得不够时尚,且不支持 MarkDown 等新兴的标记语言,另外页面的组织方式采用了自己的一套管理语言,上手需要一定的学习成本。不过经典总归是经典。

MediaWiki 也提供了官方的 Docker image,这就节省了不少安装环境的工作量,接下来就来看看私有 MediaWiki 站点是如何搭建起来的吧。

环境说明

操作系统:centos 7.6

ip地址:192.168.31.149

配置:1核2G

本文采用单机部署一套MediaWiki

二、安装docker

具体步骤,请参考链接:

https://www.cnblogs.com/xiao987334176/p/11771657.html

三、安装mysql

代码语言:javascript
复制
mkdir -p /data
mkdir -p /data/mediawiki
mkdir -p /data/mysql

docker pull mysql:5.7

docker run -itd -p 3306:3306 --name wiki-mysql -e MYSQL_ROOT_PASSWORD=123456 --restart=always --restart=on-failure:1 --oom-score-adj -1000 --privileged=true --log-opt max-size=10m --log-opt max-file=1 -v /data/mysql:/var/lib/mysql  mysql:5.7

创建数据库以及用户,并开启远程连接权限。

代码语言:javascript
复制
# docker exec -it wiki-mysql /bin/bash

root@4a6eaab770c5:/# mysql -p123456
mysql> create database my_wiki;
Query OK, 1 row affected (0.00 sec)

mysql> create user 'wikiuser'@'%' identified by '123456';
Query OK, 0 rows affected (0.00 sec)

mysql> grant all privileges on my_wiki.* to 'wikiuser'@'%' with grant option;
Query OK, 0 rows affected (0.01 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> exit

root@4a6eaab770c5:/# exit

三、安装MediaWiki

MediaWiki 需要依赖于 MySQL,所以要先启动 MySQL,再启动 MediaWiki,不然启动会失败。

代码语言:javascript
复制
docker pull mediawiki:1.31.1
docker run -itd --name mywiki -p 8080:80 --privileged=true --restart=always --link wiki-mysql:mysql mediawiki:1.31.1

四、初始化配置

打开浏览器

代码语言:javascript
复制
http://192.168.31.149:8080/mediawiki/index.php

开始初始化配置

1.png
1.png

语言设置

1.png
1.png

环境检查

1.png
1.png

选择mysql,注意:修改ip地址为服务器ip。数据库用户:wikiuser,密码:123456

1.png
1.png

选择数据库引擎为InnoDB

1.png
1.png

设置全局名称和添加管理员

注意:wiki名称,一般为公司名

密码:必须8位以上,且符合复杂性要求

1.png
1.png

正式安装

1.png
1.png

安装完成

1.png
1.png

注意:页面会自动下载一个LocalSettings.php

注意:先不要点击 进入您的wiki,还查一个步骤,否则会出错的。

登录到服务器,将 LocalSettings.php 上传到服务器,比如:/tmp目录

将 LocalSettings.php 复制到容器中的wiki根目录

代码语言:javascript
复制
docker cp LocalSettings.php mywiki:/var/www/html/

点击 上图中的 进入您的wiki

它会调转链接:

代码语言:javascript
复制
http://192.168.31.149:8080/index.php/首页

效果如下:

1.png
1.png

网页持久化配置

目前的php代码在容器里面,一旦重启,数据就丢失了。

复制网页目录

代码语言:javascript
复制
docker cp mywiki:/var/www/html /data/mediawiki/

杀掉docker,以新的方式启动。

代码语言:javascript
复制
docker rm -f mywiki
docker run -itd --name mywiki -p 8080:80 -v /data/mediawiki/html:/var/www/html --privileged=true --restart=always --link wiki-mysql:mysql  mediawiki:1.31.1

再次刷新页面,效果同上!

本文参考链接:

https://www.jianshu.com/p/8de371558ef6 https://blog.51cto.com/13767724/2173885

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-03-12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、简介
    • 环境说明
    • 二、安装docker
    • 三、安装mysql
    • 三、安装MediaWiki
    • 四、初始化配置
      • 网页持久化配置
      相关产品与服务
      数据库
      云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档