前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >10分钟拥有自己的Wikipedia

10分钟拥有自己的Wikipedia

作者头像
包子面试培训
发布2018-04-20 17:07:39
3.9K0
发布2018-04-20 17:07:39
举报
文章被收录于专栏:包子铺里聊IT包子铺里聊IT

谁是花和尚?

花和尚是一个定居西雅图的程序员,拥有多年系统设计和开发经验。喜欢研究和总结System Design, 并传授给大家。花和尚在MITBBS一篇 "我的System Design总结" 文章获得超过8万访问量,并被多家网站和博客转载。

引子

相信你一定用过Wikipedia。它简单明了的页面使内容容易查找和阅读。但你有没有想过自己也可以轻松获得一个专属Wikipedia?

背景

小编从一毕业进入某电商公司,就在公司开始使用一款与Wikipedia类似的内部网站。写team wiki,项目requirement,design,甚至技术分享全在上面,深深体会到有Wiki的便利。但是没有铁打的员工,总有一天我要展翅高飞离开,那么如何将记录的与公司无关的宝贵知识和经验搬运出来?放在txt文件容易误删,放在Google doc里格式不对又无法搜索。这可让我伤透了脑筋。

直到2014年某天,我突然意识到公司wiki网站的右下角有这样一个奇怪的图标:

从此,新世界的大门被打开了。

什么是MediaWiki?

MediaWiki是一款免费的open-source wiki application。想必你也猜得到,它源于Wikipedia,在2003年12月,也就是Wikipedia上线2年后,MediaWiki 1.1正式上线。从此以后被无数的公司和组织使用。

MediaWiki有700多个配置设置和超过1800个扩展,可以使各种特性被添加或更改。它也被一些公司部署为一个内部知识管理系统(包括小编就职的某公司),一些教育机构也让学生使用MediaWiki来进行小组项目的管理和维护。

什么东西应该放在Wiki上?

什么东西都可以。我一开始的时候是遵从在公司的原则,只放技术类的(e.g. Linux Command备忘),后来发现写blog也不错,就开始在上边写blog。再后来用来记事,现在连写文章也使用它。十分方便。

在我看来,每个人都应该拥有一个属于自己的Wikipedia。 -孔子

搭建Wiki求虐版

小编最开始使用的方法是比较原始的:MediaWiki zip + Heroku部署。

  1. 先从https://www.mediawiki.org下载MediaWiki zip包并解压缩到你的电脑上;
  2. (optional)注册Heroku账号,使用免费版的host;
  3. 将Heroku git指向解压缩的MediaWiki root directory;
  4. git add; git commit; git push;

这时,当你在访问你的heroku网址时,你应该已经能看到这个页面了:

这就证明你的安装已经成功了。此时你已经拥有了用户登陆管理,搜索,浏览,添加,修改,删除wiki page等多项默认功能。

这种方法小编用时2个小时,原因是遇到PostgresSQL和MediaWiki版本不兼容等问题。你当然会问:说好的10分钟呢?

搭建Wiki简易版

小编第一次用heroku搭好后就一直没更新版本,虽然heroku给的dyno instance奇慢无比且每天要有6个小时不能访问,但我也不是24/7写东西的人,所以也算相安无事,直到几天前,我收到了这样一条email。

The database DATABASE_URL on Heroku app XXX is approaching its allocated storage capacity. The database contains 7,441 rows. The Hobby-dev plan allows a maximum of 10,000 rows. If the databases exceeds 10,000 rows then INSERT privileges will be revoked, preventing more data from being written.

我的内心是崩溃的。heroku推荐我升级到basic plan,但鉴于heroku的basic套餐并不免费,我明白我又要搭建一次wiki了。

幸运的是,AWS提供了1年免费的EC2 instance。小编research了一下,发现了一款叫bitnami的更加简易的基于AWS的tool。该tool直接自带最新版的mediawiki AMI并指导你安装。具体步骤如下:

  1. 注册并登录bitnami(https://app.bitnamihosting.com)和AWS(https://aws.amazon.com);
  2. 在AWS Console中,添加一个IAM user。这时你应该会获得Access Key和Credential,后面会用到;
  3. Create your own policy(as shown in here: http://bit.ly/1PkY5xi);
  4. Attach policy to IAM user created;
  5. 通过这个link(https://app.bitnamihosting.com/clouds/new)把bitnami和AWS关联起来,需要刚才的Access Key和Credentials;
  6. 点击“Create a Server”的绿色button,选取MediaWiki应用并build

参考link: http://bit.ly/1rihetW

完成!现在你就有自己的Wiki了。开始用高大上的Wiki记录你的生活点滴吧!

额外插件

我最喜欢MediaWiki的原因就是添加插件十分简单,基本上只需要下载extension然后把他放在wiki要求的目录下,并修改一个叫做LocalSettings.php的文件即可。你可能会担心自己不会php能不能玩得转,放心,MediaWiki的插件page会告诉你每一个要修改的地方。

其中我觉得非常好的有:

Extension:MobileFrontend

手机友好的界面。从此在手机上也可以查看了。

Extension:VisualEditor

如果你实在不想学MediaWiki的syntax,就试试这个吧。

Extension:AWS

默认模式下,wiki page是存在ec2 host上的,这样想换一个host很难,这个插件可以把page存在S3里。

小结

对小编而言,MediaWiki已经成为记录blog和注意事项等不可或缺的工具,比如"跟花和尚学系统设计"系列的所有文章均是在MediaWiki上完成的。希望10分钟后的你也拥有了一个属于你自己的Wikipedia。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2016-06-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 包子铺里聊IT 微信公众号,前往查看

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

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

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