- 逆向行駛 - https://520.be/ -

Docmost 深度開箱:資料主權救星,還是 SSO 稅資安噱頭?

內容目錄

📚 Docmost 深度開箱:資料主權的救星,還是「SSO 稅」壓垮小資族的資安噱頭?

🔥 一句話懶人包:
Docmost 是目前開源自架界最接近 Notion 體驗的協作 Wiki,即時多人編輯絲滑、內建 Draw.io/Excalidraw/Mermaid 圖表整合,GitHub 已累積超過 21,000 顆星。但它的商業模式極具爭議:雙因素認證(MFA)與單一登入(SSO)這種現代系統的基本資安配備,被鎖進最低消費 10 人份、年繳約 13,000 台幣 的企業方案。過去一年更接連爆出多起高風險 CVE 漏洞,其中一項 ZipSlip 漏洞的危險程度是滿分等級。適合小型技術團隊在內網自架用來寫文件、畫架構圖;不適合直接暴露在公網、也不適合毫無 Linux 基礎的電腦小白獨自架設 🙅‍♂️

你是不是也遇過這種情況:團隊資料散落在 Google 雲端硬碟、Notion、甚至某個離職同事的筆電裡,想找一份三個月前的會議記錄,翻遍聊天室都找不到?或者更讓人不安的是——你們公司的技術文件、客戶資料,全部乖乖躺在 Notion 或 Confluence 位於美國的伺服器上,個資法或 GDPR 稽核一來,法務部門的臉就綠了 🤦‍♂️

如果這些痛點讓你點頭如搗蒜,那你這幾個月大概也在 Reddit 或 GitHub 上聽過「Docmost」這個名字。它打著「你真正擁有的知識庫」旗號,想取代 Notion 跟 Confluence,讓你把資料整個鎖進自己的伺服器硬碟裡 📦

但今天這篇文章不會只跟你說「開源又免費,下載就對了」。我們會把官方那套漂亮的行銷文案攤開來檢查,用真實 CVE 編號、Reddit 上被炎上的定價爭議、GitHub Issue 裡的抱怨,告訴你這東西到底適合誰、地雷埋在哪裡,最後還附上一步一步的 Docker 安裝教學,讓你自己動手把它架起來 🤠

💡 碎碎念:Docmost 表面上是純開源專案,但背後其實是一間叫 Docmost, Inc. 的公司在營運,走的是「開放核心(Open Core)」模式——基礎功能免費開放,進階功能鎖進付費版。這個商業結構是後面所有爭議的根源,記住這件事,後面看到「為什麼這個功能要收錢」的時候就不會意外了 💵

🌐 Github官方網址 ㊙️ [31]

[32]


🟦 🟦 🟦

📌 Docmost 到底是什麼?先搞懂它的真實定位

簡單說,Docmost 是一款「可自架的開源協作 Wiki」,核心賣點是解決一個兩難:你既想要 Notion 那種絲滑的區塊編輯與即時協作體驗,又不想把公司機密資料交給別人的雲端伺服器保管 🛡️

💡 白話文教室:Notion/Confluence vs Docmost
Notion 跟 Confluence 就像租來的高級套房——裝潢漂亮、服務到位,但房子產權不是你的,房東(雲端業者)隨時可以漲租金(訂閱費調漲)、甚至改變出租規則(強制轉雲端、取消自架方案)。Docmost 則是你自己買地蓋的透天厝:地基(伺服器)自己顧、水電(Docker、資料庫)自己接,但房子產權跟裡面的所有東西,都是你的 🏠

✅ 根據官方統計,Docmost 在 GitHub 上已累積超過 21,000 顆星,最新核心穩定版為 v0.95.01【資料時間點:2026-07-17】。專案由創辦人 Philip Okugbe 帶領,目標是打造一個沒有廠商鎖定(Vendor Lock-in)疑慮的企業級知識庫,讓政府機關、金融業、醫療機構這類受嚴格法規監管的組織也能安心使用 ✅

✅ 從服務條款衝突的角度看,如果你只在公司內部封閉網路(Air-gapped)使用基礎功能,完全不會有外部合規風險。但企業版新增的「AI 助理」功能,允許直接在編輯器裡串接 OpenAI、Google Gemini 這類外部雲端大型語言模型做語意搜尋與內容生成——如果員工貪圖方便,把客戶個資或公司財務機密丟給這些外部 AI 處理,資料就會離開你自架的伺服器,直接送到第三方業者手上,這對重視合規的組織來說是一顆隱形地雷 💣

[33]


🟩 🟩 🟩

🚀 主要功能實測:真香功能 vs 還在陣痛期的坑

官方文宣把 Docmost 描繪成無所不能的終極協作平台,但拆開來看,有些是真正穩定的核心優勢,有些是包裝華麗的付費牆,也有些存在明顯的技術瓶頸 🚧

功能模組 官方宣傳與實測表現 穩定度評語
即時多人協作編輯 採用 CRDT(無衝突複製資料類型)技術,多人可同時在同一頁面打字修改,游標與字元在幾毫秒內同步,斷線重連也能自動解決內容衝突 極佳。是最大賣點,穩定性高
圖表嵌入(Diagrams as Code) 原生整合 Draw.io(系統架構圖)、Excalidraw(手繪風白板)、Mermaid(Markdown 語法流程圖) 優秀。極度契合工程團隊需求
大型 Draw.io 圖表載入 GitHub Issue #928 回報:分享頁面嵌入過於複雜或體積大的架構圖時,會陷入無限讀取,連系統日誌都找不到報錯訊息 明顯瓶頸。前端渲染效能未臻成熟
企業版「Bases」資料庫視圖 提供類似 Notion 的資料庫與看板(Kanban)視圖,個人私人空間、全文本附件檢索、頁面審核工作流 鎖付費牆。開源版完全沒有
MFA/SSO 單一登入 官方首頁大力宣傳「企業級安全」,但這其實鎖在付費版,免費版只能靠傳統「信箱+密碼」登入 宣傳與現實落差大
💡 白話文教室:CRDT 是什麼?
想像五個人同時在同一張透明玻璃紙上寫作業,每個人手上的筆跡最後會自動疊合排好,不會有人的字被別人塗掉、也不會因為兩人同時下筆就整份作業毀掉。CRDT 就是負責在背後做這件「自動排版整合」工作的數學演算法,這也是為什麼 Docmost 的多人協作可以做到跟 Google 文件一樣順暢 🔃

🚨 畫重點!千萬別踩雷:
官方首頁把「企業級安全」當成主要賣點宣傳,但 MFA 跟 SSO 這種現代系統「最基礎」的資安防護,在免費開源版裡是被徹底閹割的。如果你自架的是社群版,你的登入方式跟十年前的網站沒兩樣——只有信箱加密碼,這跟宣傳形象形成了強烈諷刺的落差 🤦‍♂️

[34]


🟪 🟪 🟪

🖥️ 系統需求與依賴風險:輕量外表下的隱形門檻

把 Docmost 部署到正式環境,絕對不是點幾下滑鼠「下一步」就能搞定的任務。它是一套現代化的微服務架構應用,底層技術堆疊相當厚重 🧱

  • 硬體建議:官方與社群實戰經驗強烈建議至少 2 核心 CPU4GB 記憶體。若硬塞進 1〜2GB 記憶體的廉價 VPS,多人同時編輯時極易觸發 Linux 的 OOM(記憶體不足)機制,把核心容器強制擊殺
  • 三大核心容器:基於 NestJS/Fastify 開發的 Node.js 應用本體、負責永久儲存的 PostgreSQL 資料庫、負責即時通訊與快取的 Redis 伺服器
  • 儲存空間:支援本地磁碟儲存,但官方建議透過環境變數串接 S3 相容的物件儲存服務(如 MinIO),避免日後搬家的痛苦

🧑‍🔧 DevOps 小知識:Redis 不是可有可無的加速器
很多人以為 Redis 只是「讓網站跑快一點」的快取層,但在 Docmost 的架構裡,Redis 扮演的是即時協作系統的「大聲公」——負責 Pub/Sub messaging,讓所有正在編輯同一頁面的使用者能即時收到彼此的修改。一旦 Redis 容器因記憶體不足意外重啟,或網路設定有差池,所有正在線上編輯的人會瞬間斷開同步,畫面直接卡死或被迫轉為唯讀。另外,前後端的即時通訊高度依賴 WebSocket,設定 Nginx 反向代理時務必正確配置 UpgradeConnection 標頭,否則頁面能開,但即時編輯功能會直接失效 🆖

關於敏感資訊儲存機制,Docmost 的核心加密、JWT 憑證簽章與 Session 管理全部仰賴一組叫 APP_SECRET 的環境變數,官方強制要求必須是透過 OpenSSL 產生、至少 32 字元的高強度隨機字串 🔐

🚨 畫重點!千萬別踩雷:
如果不慎把包含 APP_SECRET 的 docker-compose.yml 上傳到公開的 GitHub 儲存庫,駭客能輕易偽造任意使用者的登入憑證,直接接管整個系統。這組密鑰的保密等級,等同於你家保險箱的密碼,絕對不能出現在任何公開版本控制紀錄中 🛑

🧐 門檻評估:完全不懂程式的人能順利安裝嗎? 👉 評分:⭐⭐(滿分五星)。雖然網路上有 Railway、Elestio 這類一鍵部署服務,但若要真正擁有「資料主權」並長期在自己的伺服器上營運,安裝者必須具備 Linux 命令列基礎、熟悉 Docker 容器化技術、懂得配置 Nginx 或 Traefik 反向代理與 SSL 憑證,任何一個環節出錯都可能讓系統整個開天窗 ⚠️

[35]


🟧 🟧 🟧

🎭 情境對應矩陣:你到底該不該用?

🙋 一般輕量使用者(筆記控/學生)

這類人通常是 Notion 重度使用者,因為擔心隱私或想離線存取才尋找自架方案 🕵️‍♂️

💡 白話文教室:對這群人來說,Docmost 就像一台「需要自己換機油的跑車」——每月要付 VPS 主機費(約 $5〜$10 美金),還要花時間維護系統。更致命的是,對個人筆記超實用的「看板」與「資料庫屬性」功能被鎖在付費版。多數人最後會發現,維護成本遠大於效益,轉而投向完全免費、採本地 Markdown 檔案的 Obsidian 📖

適合度:低〜中。 除非你就是想練習自架、享受折騰的樂趣,否則純粹記筆記用 Obsidian 或直接用 Notion 免費版可能更划算 💡

👨‍💻 獨立開發者/小型工程工作室(5〜10 人)

這是 Docmost 開源版最能發揮價值的甜蜜點。小型團隊需要乾淨、無廣告、反應快的環境來寫 API 規格、系統架構文件、部署手冊。內建的程式碼語法高亮、Draw.io 與 Mermaid 整合完美契合工程師需求,且團隊人數少不需要複雜的階層權限管理,工程師本身就有能力維護 Docker 🛠️

適合度:高。 這裡是 Docmost 開源版價值最大化的甜蜜點,強烈建議先在測試環境跑過一輪再上線 👍

🏢 企業商業用途(50 人以上)

當公司規模擴大,IT 部門面臨 ISO 27001 這類合規稽核壓力,絕不可能容忍員工用毫無防護的帳密登入系統。企業必須採購 Business 方案才能取得 OIDC/SAML 單一登入,整合公司既有的 Active Directory 或 LDAP,並透過「頁面審核工作流」與「稽核日誌」確保每份文件的修改都可追溯 🧑‍💼

適合度:中低(需嚴格條件)。 若無法接受最低消費 10 人份的企業方案定價,強烈建議評估同類替代方案(見後文) 📌

🚨 高風險誤用場景:假借開源之名的資安破口

這是真實且危險的災難劇本:某國立大學系學會資訊股長,為解決歷屆傳承資料散落各地的問題,租了一台每月僅 5 美金、記憶體僅 2GB 的廉價海外主機,用 Docker 架設 Docmost(v0.23.0),直接把 3000 埠對外開放給全系學生使用 ⛔️

💡 白話文教室:沒裝防彈玻璃又忘記鎖門
股長因為不懂 Nginx 反向代理,沒裝 SSL 憑證。學生在圖書館公用 Wi-Fi 登入時,帳號密碼被封包側錄軟體明文攔截。因為免費版沒有 MFA,駭客拿到密碼後如入無人之境,直接取得會長權限。緊接著,駭客利用 CVE-2026-22249(ZipSlip 漏洞),構造一個內部檔名包含目錄跳脫符號的惡意壓縮檔,上傳到系統匯入功能,直接覆寫伺服器底層核心檔案,拿下整台主機的最高控制權,把它變成發送釣魚信件的殭屍網路節點 🧟

🚨 畫重點!千萬別踩雷:
自架時務必透過 Tailscale 或 Cloudflare Tunnel 這類虛擬區域網路存取,絕對不要把埠口直接對公網開放;務必定期執行資料庫備份;務必保持在最新版本以取得安全修補 🛡️

[36]


🟥 🟥 🟥

🔐 隱私與資料安全:CVE 風暴下的真實成績單

選擇自架系統的初衷通常是為了「隱私」,但若沒有妥善設定,自架系統往往比商業雲端服務更危險 ⚠️

🟡 許多使用者不知道,Docmost 預設會啟用「遙測功能(Telemetry)」,每天定時把伺服器上的活躍使用者數、頁面總數、空間總數、系統版本號等營運指標,回傳給 Docmost 官方伺服器。對國防、金融這類嚴格要求資料隔離的機構而言,任何未經授權的對外連線都是資安亮紅燈的行為 🚥

🧑‍🔧 DevOps 小知識:只要在伺服器的環境變數檔案中加上 DISABLE_TELEMETRY=true 這一行,就能從根本切斷系統與官方的「電話連線」。

作為一個開發節奏極快的年輕專案,Docmost 過去一年被國際資安機構登錄的 CVE 漏洞數量令人咋舌,且多數屬高風險:

CVE 編號 漏洞類型 影響版本 白話文風險解析
CVE-2026-22249 ZipSlip 任意檔案寫入
CVSS 9.8
v0.21.0 – v0.23.x 駭客上傳特製 ZIP 檔,解壓縮時惡意穿越目錄層級,覆寫伺服器核心檔案,直接奪取主機控制權
CVE-2026-33193 MIME 偽造儲存型 XSS < v0.70.0 駭客上傳惡意附件騙過系統檢查,同事點擊後瀏覽器暗中執行惡意程式碼,竊取登入憑證
CVE-2026-23630 Mermaid 圖表模組 XSS v0.3.0 – v0.23.2 在畫流程圖時偷塞惡意參數,因系統未過濾消毒,任何瀏覽該頁面的人都會中招
CVE-2026-34213 附件覆寫越權漏洞 v0.3.0 – v0.70.x 一般權限員工可修改 API 請求中的 ID 參數,把老闆機密文件的附件悄悄換成惡意檔案
CVE-2026-33146 搜尋引擎權限繞過 v0.70.0 – v0.70.2 公開分享頁面中,路人可利用搜尋 API 撈出原本被設為隱藏機密的子頁面內容
GHSA-h7fp-4f37-29wq 網頁 Meta 標籤 XSS v0.20.0 – v0.24.x 公開分享頁面標題未經 HTML 脫逸處理,惡意程式碼寫在標題就能讓打開連結的人立刻中毒
💡 白話文教室:什麼是 ZipSlip?
正常情況下,快遞員只會把包裹放到你家信箱。ZipSlip 就像是有人把一個寫著「../../../你家保險箱」地址的假包裹夾帶進正常快遞裡,而收發室(伺服器的解壓縮程式)沒有檢查地址是否合法,就照著假地址把包裹直接送進了你家保險箱,讓外人得以覆寫系統最核心的檔案。

🧐 企業機密資料適合透過此工具處理嗎? 上述漏洞多數集中在跨站腳本攻擊(XSS)與權限驗證繞過,顯示開發團隊在追求功能開發速度時,犧牲了嚴謹的安全審查。若使用最新版本並關閉遙測,安全性已大幅改善;但站在防禦縱深的考量,強烈建議企業絕不能將 Docmost 直接暴露在公網,必須隱藏在企業 VPN 之後才能安全處理機密資料 🛡️

[37]


🟫 🟫 🟫

📜 授權條款合規風險:AGPL 這個「傳染病條款」

Docmost 的原始碼庫採用了經典且嚴厲的「混合式授權」,這對企業法務部門是必須高度警戒的雷區 ⚡

💡 白話文教室:AGPL 到底在防誰?
一般開源授權(如 MIT)就像跟裝潢公司借圖紙,只要你不把裝潢好的房子「賣」給別人,你可以把自己加蓋的部分藏起來不公開。但 AGPL 彌補了這個漏洞——如果你把 Docmost 改造後架在雲端,作為網路服務提供給外部使用者,AGPL 強制規定你必須把修改後的所有程式碼公開開源。這是為了防止 AWS 這類雲端巨頭免費拿別人的開源軟體去賺錢,卻不回饋社群。
使用場景 合規風險 白話解析
企業內部自架使用 安全 部署在公司內網僅供員工協作,完全合規,不需公開任何內部程式碼
商業 SaaS 對外提供 高風險 若改頭換面包裝成收費雲端服務,必須開源你修改後的所有程式碼,否則即屬侵權
整合進閉源產品 極高風險 閉源商業產品若深度連結 Docmost 開源模組,AGPL 傳染性會蔓延到整個產品,迫使商業機密程式碼全面開源

🟡 在最新企業版本中,Docmost 大幅強化了 AI 能力,可在後台設定 OpenAI 或 Google Gemini 的 API 憑證。但在 GDPR 或金融監管法規下,把個人身分識別資訊傳輸給位於美國的 OpenAI 伺服器運算,構成實質的「資料跨境傳輸」,若未事先取得同意或簽署標準合約條款,將直接觸犯重大隱私法規 🚫

🧑‍🔧 DevOps 小知識:Docmost 保留了一個關鍵彈性——支援整合 Ollama。這代表企業可以在本地伺服器跑開源的離線 AI 模型(如 Llama 3、Qwen),讓 AI 運算完全在防火牆內進行,徹底阻絕資料外流的法律風險。若你的組織需要 AI 協作功能又受嚴格監管,這是唯一安全解。

[38]


🟨 🟨 🟨

💰 商業模式與「SSO 稅」爭議:小資族的荷包炸彈

Docmost 的定價策略,是它在開源社群中引發最大爭議的核心。它採用免費增值(Freemium)模式,但劃分付費邊界的方式非常激進 💰

✅ 社群版完全免費,且大方提供無限空間、無限使用者與完整協作編輯功能。但官方精準地把所有「企業不可或缺」的管理與資安機制劃入付費牆:資料庫看板(Bases/Kanban)、個人私人空間、文件審核工作流、全文本附件搜尋、以及最關鍵的 SSO 與 MFA 🔒

🩵 荷包試算:SSO 稅有多貴?
Business 方案定價為每位使用者每月 $3.5 美金(年繳)。官方強制規定無論團隊多小,最少必須購買 10 個席位,且必須年繳。假設你是一個只有 4 人的新創小團隊,完全不需要 AI 或審核功能,唯一訴求只是「想開啟 SSO 與 MFA 保護公司資安」——你無法只付 4 個人的錢,必須為了這項基礎安全功能,每年硬生生掏出 $3.5 × 10人 × 12個月 = $420 美金(約新台幣 13,000 元)。這種將基礎資安功能當豪華套件收費的行為,在社群中被戲稱為「SSO 稅(SSO Tax)」💵

🟡 這意味著企業導入 Docmost 時,雖然軟體本身可以免費自架,但為了滿足最基本的資安要求,隱藏的採購成本與廠商鎖定風險依然高昂 💷

[39]


🔷 🔷 🔷

🏗️ 自架 vs 雲端代管服務取捨

對不想花心力維護 Linux 伺服器的人,市場上也有 Railway、Opsily、Elestio 這類第三方託管平台 ☁️

比較維度 🖥️ Docker 裸機自架版 ☁️ 第三方託管/雲端版
建置複雜度 極高。需精通 Docker Compose、網路路由、Postgres 掛載、SSL 憑證簽發 極低。一鍵部署,自動配置好資料庫與快取
資料主權與隱私 絕對控制。可部署在完全阻絕網際網路的內網環境 中等。資料存放於第三方主機商機房,受該國法規管轄
基礎設施成本 極低。每月約 $5〜$10 美金 的 VPS 即可支撐小團隊 視用量浮動。依運算資源與時數計費,通常高於自管 VPS
維護與災難復原 高風險。需自行撰寫腳本定期備份資料庫,升級失敗需自行排除 低風險。通常提供自動化每日加密異地備份,可一鍵版本回滾
SSO/MFA 功能限制 無法使用。仍受軟體底層金鑰限制,需向官方購買授權碼 無法使用。即便用託管平台,仍需自備企業授權金鑰

[40]


🟩 🟩 🟩

😤 真實使用者痛點(GitHub Issues 實錄)

拋開官方文宣,深入 GitHub Issues 與工程師論壇,可以看到不少長期讓使用者感到挫折的問題 😤

🔍 1. 全域搜尋(Global Search)的嚴重缺位

在任何成熟的 Wiki 系統中,能夠全站搜尋關鍵字是基本常識。但目前 Docmost 的搜尋機制被嚴格限制在「單一空間(Space)」內。根據 GitHub Issue #101 中大量使用者的抱怨,這種設計導致員工跨部門協作時,必須先憑記憶切換到正確的空間才能開始搜尋,極大降低找資料效率。官方雖已承諾列入開發計畫,但至今仍未正式實裝 ⏳

⚠️ 2. 資料庫遷移機制的脆弱性

Docmost 後端使用 Kysely 作為資料庫查詢與遷移工具,升級時系統會自動對 PostgreSQL 進行結構變更。但官方沒有提供完善的「降版(Rollback)」機制——如果升級新版後發現嚴重 Bug 想退回舊版,系統會因資料庫結構已被改寫而直接崩潰,唯一自救方法是完全抹除資料庫,依賴自己手動備份的 SQL 檔案還原 😭

🐢 3. PDF 與大型物件的效能瓶頸

早期版本處理大型檔案時是直接載入記憶體,對伺服器造成極大壓力。雖近期版本改用串流技術改善,但使用者仍回報 Safari 瀏覽器中 PDF 的分享與列印會出現破版或無法讀取的問題 🦥

🫂 新手求助:若你在自架過程中卡關,官方 GitHub Discussions [41]github.com/docmost/docmost/discussions)是主要求助管道,安裝與環境變數的官方文件也整理得相當完整,遇到 WebSocket 連不上、中文搜尋失效這類常見問題,先去那邊搜尋關鍵字通常都能找到解法。

[42]


🟪 🟪 🟪

💥 負面事件與信任危機

❶ 事件一:被炎上的「貪婪定價」
在知名自架愛好者論壇 Reddit(r/selfhosted)上,一篇名為《Docmost – greedy pricing and hiding source code》的文章引發數百則留言熱議。發文者強烈抨擊 Docmost 利用開源社群熱情起家,卻在產品成熟後把 MFA 與 SSO 設下前述的高昂付費門檻。有評論一針見血比較:「Microsoft 365 商業標準版一年也才 $150 美金,還包辦全套 Office、信箱與 1TB 雲端;Docmost 只是個要我自己維護伺服器的 Wiki,憑什麼收這種價格?」雖然創辦人親自出面滅火,但這種「以資安為要挾」的定價策略,已在硬派開源使用者心中留下負面印象 📉

❷ 事件二:「Forkmost」分叉專案的誕生與無奈死亡
由於不滿官方封鎖太多實用功能,開發者 Vito0912 發起了名為 Forkmost 的分叉專案,致力於把 PDF 完整預覽、進階權限控制、甚至 SSO 功能透過社群力量免費實作出來,一度獲得上百顆星關注。然而,由於官方開發節奏極快,且底層資料庫遷移機制極度嚴格,Forkmost 自己專屬的資料表與官方版產生無法彌合的結構分歧,每次合併官方新修補都遭遇毀滅性代碼衝突。最終在 2026 年 5 月 19 日,維護者無奈宣布 Forkmost 正式進入 EOL(生命週期結束),改為唯讀封存 🪦

💡 碎碎念:這場悲劇給開源界一個深刻教訓——依賴單一個人維護的非官方分叉版,隱藏著極高的斷炊風險。當年響應號召轉換到 Forkmost 的使用者,如今面臨既得不到更新、又因資料庫不相容而無法退回官方版的死胡同 🤡

[43]


🟧 🟧 🟧

🔄 替代方案冷酷比較

比較維度 📝 Docmost 📖 Outline 📚 BookStack 🏢 Confluence(雲端版)
授權與開放程度 AGPL-3.0(混合商業授權) BSL(非純開源,對自架極友善) MIT(完全免費開源) 專有商業軟體
免費版 SSO/MFA ❌ 需付費購買 ✅ 內建免費完整支援 ✅ 內建免費完整支援 ❌ 需升級付費方案
編輯體驗 區塊編輯+CRDT 即時協作 區塊編輯+CRDT 即時協作 傳統 WYSIWYG 編輯器 豐富區塊+龐大生態系
資料層級邏輯 工作區 > 空間 > 無限巢狀頁面 工作區 > 嚴格樹狀目錄 書架 > 書本 > 章節 > 頁面 空間 > 樹狀頁面
最大優勢 Draw.io/Mermaid 整合完美,適合工程師 介面極優雅,免費版資安誠意十足 效能極穩定,適合非技術行政單位 無腦付錢即可擁有完整解決方案

🌳 選擇建議決策樹

  • ✨ 極度重視介面美觀,團隊完全不需要 SSO 與稽核 → 選 Docmost
  • ✨ 堅持自架,公司政策絕對需要免費 SSO 與 MFA → 選 Outline
  • ✨ 有充裕 IT 預算,完全不想碰伺服器維運 → 乖乖付費用 Confluence
  • ✨ 你是傳統行政機關或學校,需要不會弄壞、層級分明、不需花俏即時協作的文件庫 → 選 BookStack

[44]


🟥 🟥 🟥

📊 綜合風險評級

使用族群 風險等級 主要風險與建議行動
一般用戶/學生 🟡 中低 缺乏運維能力,斷電或升級錯誤易導致資料庫損毀。無 MFA 防護,易遭撞庫。建議:嚴禁對外開放埠口,搭配 Tailscale/Cloudflare Tunnel 存取;務必設定 cron排程定期備份資料庫
獨立開發者/新創團隊 🟢 低 預設會回傳系統活躍數據給官方;Redis 崩潰會造成全員斷線。建議:加入 DISABLE_TELEMETRY=true;確保記憶體大於 4GB 並配置 Redis 持久化
中大型企業/監管機構 🟠 中 免費版無稽核日誌與 SSO,無法通過 ISO 27001;過去一年爆發包含 ZipSlip 在內的高危漏洞。建議:編列預算購買 Business 方案;嚴格隔離在公司 VPN 內網;AI 功能強制指向本地 Ollama,嚴禁串接 OpenAI

[45]


🏁 🏁 🏁

🏆 總結評分(10 分制)

評分維度 分數 一句話評語
功能完整性 8.5 編輯器體驗絕佳,CRDT 協作絲滑,唯獨缺乏「全域搜尋」是一大敗筆
資料安全性 5 2026 年頻繁爆發 ZipSlip 與多起 XSS 高危漏洞,且把 MFA 設為付費籌碼,資安誠意不足
法律合規性 6.5 AGPL 條款明確防止商業濫用,但開啟外部 AI 會有嚴重的跨境個資傳輸疑慮
安裝易用性 4 需同時配置三大容器,Nginx 的 WebSocket 設定極易出錯,對非工程師不友善
維護活躍度 9 更新極度頻繁,開發者對 GitHub Issues/PR 的回應速度極快
🇹🇼 在地化(繁體中文) 7.5 官方多語言支援超過 10 種語言,介面有繁中可用,但中文全文搜尋預設會「找不到內容」,需手動修補(見附錄)
🏆 加權總分 約 6.8 最終建議:【謹慎使用】

🔥 Docmost 是一款「外表光鮮亮麗,但內功尚在修練」的產品。它精準抓住企業渴望擺脫 SaaS 訂閱制、追求資料主權的痛點,並成功提供目前開源界最接近 Notion 的絲滑編輯體驗,這點成就無庸置疑 🧜‍♀️
然而作為一款標榜「企業級」的知識庫,它在資安與商業道德的界線上充滿爭議:把 MFA 與 SSO 鎖在必須購買 10 人份低消的昂貴付費牆後,加上短期內被揪出大量高危 CVE,顯示程式碼的安全邊界尚不夠成熟 💣
如果你是經費有限、僅在封閉內網運行的小型技術團隊,想要一個流暢又能畫架構圖的共筆工具,Docmost 會讓你愛不釋手;但如果你重視資安防護、受法規嚴格監管,強烈建議先評估 Outline 是否更符合你的預算與安全期待 🧐

[46]


🛠️ 🛠️ 🛠️

🧰 附錄:手把手 Docker 自架安裝教學

以下以 Ubuntu 24.04 + Docker + Nginx + Let’s Encrypt SSL 的組合示範,這也是社群最主流的自架方式 🛠️

📦 ① 安裝 Docker 與 Docker Compose

# 更新系統套件
sudo apt update && sudo apt upgrade -y
sudo apt install ca-certificates curl -y

# 加入 Docker 官方 GPG 金鑰
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# 加入軟體來源並安裝 Docker
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y

📂 ② 建立專案目錄並下載官方 Compose 檔

mkdir docmost && cd docmost
curl -O https://raw.githubusercontent.com/docmost/docmost/main/docker-compose.yml

# 產生一組高強度的 APP_SECRET 亂碼(複製下來,下一步要用)
openssl rand -hex 32

📝 ③ 編輯 docker-compose.yml

打開檔案nano docker-compose.yml,調整以下環境變數:

APP_URL: 'https://docmost.domain.com'
APP_SECRET: 'b0a00f2f562d72047fe4b2f5a723a52c93c6ce91e2b3256a30b05606ccf9781d'
POSTGRES_PASSWORD: str0n9dbpa$$w0rd
DATABASE_URL: 'postgresql://docmost:str0n9dbpa$$w0rd@db:5432/docmost?schema=public'

🚨 畫重點!千萬別踩雷:
APP_URL 必須換成你實際的網域(例如 https://docs.example.com),APP_SECRET 必須換成上一步 openssl 產生的亂碼,POSTGRES_PASSWORDDATABASE_URL 裡的密碼要一致。若沿用官方預設值,服務將直接啟動失敗。

services:
  docmost:
    image: docmost/docmost:latest
    depends_on:
      - db
      - redis
    environment:
      APP_URL: "https://docs.example.com"
      APP_SECRET: "貼上你剛才產生的長亂碼"
      DATABASE_URL: "postgresql://docmost:你的強密碼@db:5432/docmost"
      REDIS_URL: "redis://redis:6379"
    ports:
      - "3000:3000"
    restart: unless-stopped
    volumes:
      - docmost:/app/data/storage

  db:
    image: postgres:18
    environment:
      POSTGRES_DB: docmost
      POSTGRES_USER: docmost
      POSTGRES_PASSWORD: 你的強密碼
    restart: unless-stopped
    volumes:
      - db_data:/var/lib/postgresql

  redis:
    image: redis:8
    command: ["redis-server", "--appendonly", "yes", "--maxmemory-policy", "noeviction"]
    restart: unless-stopped
    volumes:
      - redis_data:/data

volumes:
  docmost:
  db_data:
  redis_data:

🚀 ④ 啟動服務並驗證

# 啟動所有容器
docker compose up -d

# 檢查是否都正常運行
docker compose ps

開啟瀏覽器輸入 http://你的伺服器IP:3000,看到 Docmost 設定頁就代表成功,接著建立你的工作區與帳號即可 🎉

🔒 ⑤ 設定 Nginx 反向代理與 SSL

sudo apt install nginx -y
sudo nano /etc/nginx/sites-available/docmost.conf

貼上以下設定,記得把網域換成你自己的,WebSocket 相關的三行標頭千萬別漏掉,否則即時協作功能會失效:

server {
    listen 80;
    server_name docs.example.com;

    location / {
        proxy_pass http://localhost:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_read_timeout 900s;
    }
}
# 建立軟連結啟用設定
sudo ln -s /etc/nginx/sites-available/docmost.conf /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx

# 安裝 Certbot 並申請免費 SSL 憑證
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d docs.example.com

✅ 驗證小幫手:完成後打開 https://docs.example.com,看到綠色鎖頭圖示且能正常登入編輯,就代表整套自架流程順利完成!

🛠️ ⑥ 中文全文搜尋修復(Zhparser)

🟡 很多新手用戶會發現,安裝好的 Docmost 進行中文搜尋時完全找不到內容——這不是 Bug,而是 Docmost 底層使用的 PostgreSQL 全文檢索引擎,預設不支援中文斷詞,必須額外安裝 Zhparser 擴充套件才能解決 🧩

💡 白話文教室:為什麼中文搜尋會失效?
英文用空格自然斷詞,資料庫很容易知道「hello world」是兩個獨立單字。但中文「今天天氣真好」沒有空格,資料庫預設引擎看不懂該從哪裡斷句,只能整句當成一個怪異的長字串處理,導致你搜尋「天氣」永遠找不到這篇文章。Zhparser 就像請來一位專業的中文斷詞老師,教會資料庫怎麼正確拆解中文詞彙 🤖
# 先查看 postgres 的 container id
docker ps -a

# 進入該 container 的 bash 環境(換成你自己的 container_id)
docker exec -it container_id bash

# 安裝編譯所需的工具
apt update -y && apt install wget gcc make git bzip2 postgresql-server-dev-18 -y

# 下載並編譯 scws 中文分詞引擎
cd /tmp
wget http://www.xunsearch.com/scws/down/scws-1.2.3.tar.bz2
tar -jxvf scws-1.2.3.tar.bz2
cd scws-1.2.3
./configure && make && make install

# 下載並編譯 zhparser
cd ..
git clone https://github.com/amutu/zhparser.git
cd zhparser/
make && make install

# 登入 postgres 資料庫(預設帳號依你安裝時設定為準)
psql -U docmost

# 在 psql 命令列中依序輸入以下兩行
CREATE EXTENSION zhparser;
CREATE TEXT SEARCH CONFIGURATION chinese (PARSER = zhparser);

🫂 新手求助:這一步涉及進入資料庫容器內部操作,若你不熟悉 docker exec 指令,建議操作前先完整備份資料庫(docker exec container_id pg_dump),避免手滑打錯指令造成資料損毀。完成後回到 Docmost 網頁介面重新搜尋中文關鍵字即可驗證是否成功。

[47]


📎 📎 📎

📚 參考資料與延伸資源

列印本文 [57] 👨‍👩‍👧‍👦 0 次瀏覽