使用 Docker 搭建你的Wiki(MoinMoin)

栏目: 编程工具 · 发布时间: 6年前

内容简介:前面介绍了三款不同的 RSS 系统的快速搭建使用,接下来我将演示几种不同的 Wiki 系统,同样是借助 Docker 和 Traefik 进行快速搭建,本篇是第二篇,MoinMoin。如果你有阅读过我之前写的文章,那么参考本篇文章将文章搭建起来,应该只需要3分钟或者更少,如果你没有看过,那么可以点击本文相关的文章标签,阅读过往的文章。MediaWiki 是一款开源并且支持免费使用的软件,由Python编写,同样天生跨平台,并被广泛使用在各种知识社区内。

前面介绍了三款不同的 RSS 系统的快速搭建使用,接下来我将演示几种不同的 Wiki 系统,同样是借助 Docker 和 Traefik 进行快速搭建,本篇是第二篇,MoinMoin。

如果你有阅读过我之前写的文章,那么参考本篇文章将文章搭建起来,应该只需要3分钟或者更少,如果你没有看过,那么可以点击本文相关的文章标签,阅读过往的文章。

关于 MoinMoin

MediaWiki 是一款开源并且支持免费使用的软件,由 Python 编写,同样天生跨平台,并被广泛使用在各种知识社区内。

当然你可能会觉得陌生,但是当说提及几个站点之后,你可能会大呼原来如此:

除此之外,还有 GNOME、WineHQ、ID3、GCC、GRUB 等一堆大名鼎鼎的软件都使用了它。

使用 Docker 搭建你的Wiki(MoinMoin)

套用“互联网圈”的话,如果说 MediaWiki 做的是 C 端市场,那么 MoinMoin 主打的则是 B 端的企业服务。

但是在开源生态里,MoinMoin 的周边生态就不比 MediaWiki 了,不过好在全面够用,想了解的同学可以 戳此访问

他目前的稳定版本是 v1.9.10v2.0 版本正在开发的路上,有需求的同学可以去 GitHub 上 了解更多 ,本文基于稳定版本撰写。

话不多说,开始实战。

使用 Compose 运行 MoinMoin

配合下面的配置文件,使用 Compose 可以一键启动一个使用 文本文件 作为数据储存的 MoinMoin ,配置很简单,20行代码左右。

version: "3"
 
services:
 
  # https://hub.docker.com/r/olavgg/moinmoin-wiki/
  moinmoin:
    restart: always
    image: olavgg/moinmoin-wiki:1.9.10.1
    environment:
      - NOSSL=1
    labels:
      - "traefik.enable=true"
      - "traefik.frontend.rule=Host:moinmoin.lab.io"
      - "traefik.frontend.passHostHeader=true"
      - "traefik.frontend.entryPoints=http,https"
    networks:
      - traefik
    expose:
      - 80
    volumes:
      - ./data:/usr/local/share/moin/data
 
networks:
  traefik:
    external: true

当使用 docker-compose up 将应用启动之后,便可以通过我们配置的域名进行访问了,本例中地址为 moinmoin.lab.io 。(我使用 Traefik 提供服务发现,如果你不会操作,请访问我的历史文章,了解 Traefik 如何使用。)

在展示程序界面和常规操作之前,我们说一下我们的数据存放地址,以及未来插件要在哪里进行存放和应用。

在上面的配置文件 docker-compose.yml 的同级目录会自动生成 data 目录,在目录内会包含用户数据相关的内容,如下所示:

data
├── cache
│   ├── README
│   ├── __session__
│   ├── spellchecker.dict
│   └── wikiconfig
├── dict
│   └── dummy_dict
├── edit-log
├── event-log
├── initialized
├── intermap.txt
├── meta
├── pages
│   ├── BadContent
│   └── FrontPage
├── plugin
│   ├── action
│   ├── converter
│   ├── events
│   ├── filter
│   ├── formatter
│   ├── macro
│   ├── parser
│   ├── theme
│   ├── userprefs
│   └── xmlrpc
└── user

如果你需要应用官方市场的插件或者主题,请放置于 data/plugin/ 目录内的指定文件夹中,并重启 MoinMoin。

我们的 Wiki 条目数据会被存放在 data/pages 中,所以请定期对该位置数据进行备份保存。

MoinMoin 的常规操作

打开浏览器,可以看到 MoinMoin 已经运行起来了。

使用 Docker 搭建你的Wiki(MoinMoin)

双击任意一个“帖子”,可以直接进入编辑器界面。

使用 Docker 搭建你的Wiki(MoinMoin)

点击保存,第一条 Wiki 条目的更新操作就完成了。

使用 Docker 搭建你的Wiki(MoinMoin)

点击条目中的信息链接,可以直观的查看到内容的变更记录,并执行不同版本的对比,获取更多的信息。

使用 Docker 搭建你的Wiki(MoinMoin)

最后

如果你对本文聊到的 Docker 、Traefik 、Compose 还不是很熟悉,欢迎阅读我的以往文章,补全对上述技术的认识,希望我的文章可以对你有帮助。

接下来我会继续介绍几种不同的 Wiki 系统的安装配置、魔改,如果你也在考虑如何维护一套让自己用起来舒服的知识管理工具,可以继续关注,下回再见。

— EOF


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

编写高质量代码

编写高质量代码

秦小波 / 机械工业出版社华章公司 / 2011-12-28 / 59.00元

在通往“Java技术殿堂”的路上,本书将为你指点迷津!内容全部由Java编码的最佳实践组成,从语法、程序设计和架构、工具和框架、编码风格和编程思想等五大方面对Java程序员遇到的各种棘手的疑难问题给出了经验性的解决方案,为Java程序员如何编写高质量的Java代码提出了151条极为宝贵的建议。对于每一个问题,不仅以建议的方式从正反两面给出了被实践证明为十分优秀的解决方案和非常糟糕的解决方案,而且还......一起来看看 《编写高质量代码》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

在线进制转换器
在线进制转换器

各进制数互转换器

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具