使用 Docker 搭建你的Wiki(MoinMoin)

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

本文做者: 蘇洋python

建立時間: 2019年02月02日 統計字數: 2632字 閱讀時間: 6分鐘閱讀 本文連接: soulteary.com/2019/02/02/…git


使用 Docker 搭建你的Wiki(MoinMoin)

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

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

關於 MoinMoin

MediaWiki 是一款開源而且支持無償使用的軟件,由Python編寫,一樣天生跨平臺,並被普遍使用在各類知識社區內。編程

固然你可能會以爲陌生,可是當說說起幾個站點以後,你可能會大呼原來如此:ubuntu

除此以外,還有 GNOME、WineHQ、ID三、GCC、GRUB 等一堆大名鼎鼎的軟件都使用了它。瀏覽器

使用 MoinMoin 部署的網站之一

套用「互聯網圈」的話,若是說 MediaWiki 作的是 C 端市場,那麼 MoinMoin 主打的則是 B 端的企業服務。bash

可是在開源生態裏,MoinMoin 的周邊生態就不比 MediaWiki 了,不過好在全面夠用,想了解的同窗能夠戳此訪問session

他目前的穩定版本是 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 已經運行起來了。

MoinMoin 已經就緒

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

MoinMoin 編輯器界面

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

MoinMoin 的第一條 Wiki 條目

點擊條目中的信息連接,能夠直觀的查看到內容的變動記錄,並執行不一樣版本的對比,獲取更多的信息。

MoinMoin 執行條目對比

最後

若是你對本文聊到的 Docker 、Traefik 、Compose 還不是很熟悉,歡迎閱讀個人以往文章,補全對上述技術的認識,但願個人文章能夠對你有幫助。

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

— EOF


我如今有一個小小的折騰羣,裏面彙集了一些喜歡折騰的小夥伴。

在不發廣告的狀況下,咱們在裏面會一塊兒聊聊軟件、HomeLab、編程上的一些問題,也會在羣裏不按期的分享一些技術沙龍的資料。

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

關於折騰羣入羣的那些事

相關文章
相關標籤/搜索