本文使用「署名 4.0 國際 (CC BY 4.0)」許可協議,歡迎轉載、或重新修改使用,但需要註明來源。 署名 4.0 國際 (CC BY 4.0)

本文作者: 蘇洋

創建時間: 2019年02月02日 統計字數: 2632字 閱讀時間: 6分鐘閱讀 本文鏈接: soulteary.com/2019/02/0


使用 Docker 搭建你的Wiki(MoinMoin)

前面介紹了三款不同的 RSS 系統的快速搭建使用,接下來我將演示幾種不同的 Wiki 系統,同樣是藉助 Docker 和 Traefik 進行快速搭建,本篇是第二篇,MoinMoin。

如果你有閱讀過我之前寫的文章,那麼參考本篇文章將文章搭建起來,應該只需要3分鐘或者更少,如果你沒有看過,那麼可以點擊本文相關的文章標籤,閱讀過往的文章。

關於 MoinMoin

MediaWiki 是一款開源並且支持免費使用的軟體,由Python編寫,同樣天生跨平臺,並被廣泛使用在各種知識社區內。

當然你可能會覺得陌生,但是當說提及幾個站點之後,你可能會大呼原來如此:

  • Python 官方Wiki
  • Ubuntu 官方社區
  • Debian 官方Wiki
  • WireShark 官方Wiki

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

套用「互聯網圈」的話,如果說 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:
- ./storage:/usr/local/share/moin/data

networks:
traefik:
external: true

當使用 docker-compose up 將應用啟動之後,便可以通過我們配置的域名進行訪問了,本例中地址為 moinmoin.lab.io 。(我使用 Traefik 提供服務發現,如果你不會操作,請訪問我的歷史文章,瞭解 Traefik 如何使用。)

在展示程序界面和常規操作之前,我們說一下我們的數據存放地址,以及未來插件要在哪裡進行存放和應用。

在上面的配置文件 docker-compose.yml 的同級目錄會自動生成 storage 目錄,在目錄內會包含用戶數據相關的內容,如下所示:

storage
├── 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

如果你需要應用官方市場的插件或者主題,請放置於 storage/plugin/ 目錄內的指定文件夾中,並重啟 MoinMoin。

我們的 Wiki 條目數據會被存放在 storage/pages 中,所以請定期對該位置數據進行備份保存。

MoinMoin 的常規操作

打開瀏覽器,可以看到 MoinMoin 已經運行起來了。

雙擊任意一個「帖子」,可以直接進入編輯器界面。

點擊保存,第一條 Wiki 條目的更新操作就完成了。

點擊條目中的信息鏈接,可以直觀的查看到內容的變更記錄,並執行不同版本的對比,獲取更多的信息。

最後

如果你對本文聊到的 Docker 、Traefik 、Compose 還不是很熟悉,歡迎閱讀我的以往文章,補全對上述技術的認識,希望我的文章可以對你有幫助。

接下來我會繼續介紹幾種不同的 Wiki 系統的安裝配置、魔改,如果你也在考慮如何維護一套讓自己用起來舒服的知識管理工具,可以繼續關注,下回再見。

— EOF


我現在有一個小小的折騰羣,裡面聚集了一些喜歡折騰的小夥伴。

在不發廣告的情況下,我們在裡面會一起聊聊軟體、HomeLab、編程上的一些問題,也會在羣裏不定期的分享一些技術沙龍的資料。

喜歡折騰的小夥伴歡迎掃碼添加好友。(請註明來源和目的,否則不會通過審核)

蘇洋:關於折騰羣入羣的那些事?

zhuanlan.zhihu.com
圖標

推薦閱讀:
相關文章