docker搭建MediaWiki
一、简介
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
mkdir -p /data
mkdir -p /data/mediawiki
mkdir -p /data/mysql docker pull mysql:5.7 docker run -itd -p : --name wiki-mysql -e MYSQL_ROOT_PASSWORD= --restart=always --restart=on-failure: --oom-score-adj - --privileged=true --log-opt max-size=10m --log-opt max-file= -v /data/mysql:/var/lib/mysql mysql:5.7
创建数据库以及用户,并开启远程连接权限。
# docker exec -it wiki-mysql /bin/bash root@4a6eaab770c5:/# mysql -p123456
mysql> create database my_wiki;
Query OK, row affected (0.00 sec) mysql> create user 'wikiuser'@'%' identified by '123456';
Query OK, rows affected (0.00 sec) mysql> grant all privileges on my_wiki.* to 'wikiuser'@'%' with grant option;
Query OK, rows affected (0.01 sec) mysql> flush privileges;
Query OK, rows affected (0.00 sec) mysql> exit
root@4a6eaab770c5:/# exit
三、安装MediaWiki
MediaWiki 需要依赖于 MySQL,所以要先启动 MySQL,再启动 MediaWiki,不然启动会失败。
docker pull mediawiki:1.31.
docker run -itd --name mywiki -p : --privileged=true --restart=always --link wiki-mysql:mysql mediawiki:1.31.
四、初始化配置
打开浏览器
http://192.168.31.149:8080/mediawiki/index.php
开始初始化配置

语言设置

环境检查

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

选择数据库引擎为InnoDB

设置全局名称和添加管理员
注意:wiki名称,一般为公司名
密码:必须8位以上,且符合复杂性要求

正式安装

安装完成

注意:页面会自动下载一个LocalSettings.php
注意:先不要点击 进入您的wiki,还查一个步骤,否则会出错的。
登录到服务器,将 LocalSettings.php 上传到服务器,比如:/tmp目录
将 LocalSettings.php 复制到容器中的wiki根目录
docker cp LocalSettings.php mywiki:/var/www/html/
点击 上图中的 进入您的wiki
它会调转链接:
http://192.168.31.149:8080/index.php/首页
效果如下:

网页持久化配置
目前的php代码在容器里面,一旦重启,数据就丢失了。
复制网页目录
docker cp mywiki:/var/www/html /data/mediawiki/
杀掉docker,以新的方式启动。
docker rm -f mywiki
docker run -itd --name mywiki -p : -v /data/mediawiki/html:/var/www/html --privileged=true --restart=always --link wiki-mysql:mysql mediawiki:1.31.
再次刷新页面,效果同上!
本文参考链接:
https://www.jianshu.com/p/8de371558ef6
https://blog.51cto.com/13767724/2173885
docker搭建MediaWiki的更多相关文章
- 如何使用Weave以及Docker搭建Nginx反向代理/负载均衡服务器
Hi, 今天我们将会学习如何使用 Weave 和 Docker 搭建 Nginx 的反向代理/负载均衡服务器.Weave 可以创建一个虚拟网络将 Docker 容器彼此连接在一起,支持跨主机部署及自动 ...
- 使用 Docker 搭建 Java Web 运行环境
黄勇的博客 Docker 是 2014 年最为火爆的技术之一,几乎所有的程序员都听说过它.Docker 是一种“轻量级”容器技术,它几乎动摇了传统虚拟化技术的地位,现在国内外已经有越来越多的公司开始逐 ...
- mac下通过docker搭建LEMP环境
在mac下通过docker搭建LEMP环境境 1.安装virtualbox.由于docker是在lxc环境的容器 2.安装boot2docker,用于与docker客户端通讯 > brew up ...
- 转:使用 Docker 搭建 Java Web 运行环境
原文来自于:http://www.codeceo.com/article/docker-java-web-runtime.html Docker 是 2014 年最为火爆的技术之一,几乎所有的程序员都 ...
- 【译文】用Spring Cloud和Docker搭建微服务平台
by Kenny Bastani Sunday, July 12, 2015 转自:http://www.kennybastani.com/2015/07/spring-cloud-docker-mi ...
- docker搭建zabbix
本次使用docker搭建zabbix的组合是mysql+docker+zabix-server 1 先安装数据库mysql docker run --name zabbix-mysql-server ...
- Docker 搭建 etcd 集群
阅读目录: 主机安装 集群搭建 API 操作 API 说明和 etcdctl 命令说明 etcd 是 CoreOS 团队发起的一个开源项目(Go 语言,其实很多这类项目都是 Go 语言实现的,只能说很 ...
- Centos7安装ES 和 Docker搭建ES
本文版权归博客园和作者吴双本人共同所有 转载和爬虫请注明原文地址 www.cnblogs.com/tdws 一.linux centos7.x安装ES 1.下载java sudo yum instal ...
- Docker最全教程之使用Docker搭建Java开发环境(十七)
前言 Java是一门面向对象的优秀编程语言,市场占有率极高,但是在容器化实践过程中,发现官方支持并不友好,同时与其他编程语言的基础镜像相比(具体见各语言镜像比较),确实是非常臃肿. 本篇仅作探索,希望 ...
随机推荐
- Android源码分析(十二)-----Android源码中如何自定义TextView实现滚动效果
一:如何自定义TextView实现滚动效果 继承TextView基类 重写构造方法 修改isFocused()方法,获取焦点. /* * Copyright (C) 2015 The Android ...
- 通过SOFA看Java服务端如何实现运行时的模块化
本文阅读时间大约7分钟. 今天我们谈谈SOFA模块化,首先看一段SOFA的介绍: SOFABoot是蚂蚁金服开源的基于Spring Boot的研发框架,它在Spring Boot的基础上,提供了诸如 ...
- Java实现Redis的消息订阅和发布
1. 首先需要一个消息监听器类 package com.sogou.baike.testimport.testSubscribe; import redis.clients.jedis.JedisP ...
- nginx secure_link_module 访问包含
server { listen 80; server_name localhost; #charset koi8-r; #access_log /var/log/nginx/log/host.acce ...
- Spring Boot 各版本的Java版本要求
Spring Boot 各版本的Java版本要求 Spring Boot 与 Java 对应版本,以下表格由官方网站总结. 官网:https://spring.io/projects/spring-b ...
- restql 学习三 查询语言简单说明
restql 中with 参数的内容在restql 中实际上就是http request 的请求内容.按照restql 的设计 method 分为 from (get) , to (post) ,in ...
- 原语:从0到1,从硬件指令集到OS原语,锁原语的哲学
在道家的世界观中,无极生太极,是这个世界的从0到1. 天地之道,以阴阳二气造化万物.天地.日月.雷电.风雨.四时.于前午后,以及雄雌.刚柔.动静.显敛,万事万物,莫不分阴阳.人生之理,以阴阳二气长养百 ...
- windows下 zabbix agent心跳数据获取异常
模板中的心跳监控项默认是主动性的,在windows下直接装上客户端后,如果不协调时间,可能会出现心跳数据异常, 因为是主动式的监控,agent上的数据主动的推送到server上,但是从server上看 ...
- Flask的响应及request属性整理
类比django框架,Response三贱客: return HttpResponse: return ‘xxxxxxxxxx’ # 返回字符串 return r ...
- PHP读取文件内容的五种方式
-----第一种方法-----fread()-------- <?php $file_path = "test.txt"; if(file_exists($file_path ...