內容目錄
📚 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]
📌 Docmost 到底是什麼?先搞懂它的真實定位
簡單說,Docmost 是一款「可自架的開源協作 Wiki」,核心賣點是解決一個兩難:你既想要 Notion 那種絲滑的區塊編輯與即時協作體驗,又不想把公司機密資料交給別人的雲端伺服器保管 🛡️
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 處理,資料就會離開你自架的伺服器,直接送到第三方業者手上,這對重視合規的組織來說是一顆隱形地雷 💣
🚀 主要功能實測:真香功能 vs 還在陣痛期的坑
官方文宣把 Docmost 描繪成無所不能的終極協作平台,但拆開來看,有些是真正穩定的核心優勢,有些是包裝華麗的付費牆,也有些存在明顯的技術瓶頸 🚧
| 功能模組 | 官方宣傳與實測表現 | 穩定度評語 |
|---|---|---|
| 即時多人協作編輯 | 採用 CRDT(無衝突複製資料類型)技術,多人可同時在同一頁面打字修改,游標與字元在幾毫秒內同步,斷線重連也能自動解決內容衝突 | 極佳。是最大賣點,穩定性高 |
| 圖表嵌入(Diagrams as Code) | 原生整合 Draw.io(系統架構圖)、Excalidraw(手繪風白板)、Mermaid(Markdown 語法流程圖) | 優秀。極度契合工程團隊需求 |
| 大型 Draw.io 圖表載入 | GitHub Issue #928 回報:分享頁面嵌入過於複雜或體積大的架構圖時,會陷入無限讀取,連系統日誌都找不到報錯訊息 | 明顯瓶頸。前端渲染效能未臻成熟 |
| 企業版「Bases」資料庫視圖 | 提供類似 Notion 的資料庫與看板(Kanban)視圖,個人私人空間、全文本附件檢索、頁面審核工作流 | 鎖付費牆。開源版完全沒有 |
| MFA/SSO 單一登入 | 官方首頁大力宣傳「企業級安全」,但這其實鎖在付費版,免費版只能靠傳統「信箱+密碼」登入 | 宣傳與現實落差大 |
想像五個人同時在同一張透明玻璃紙上寫作業,每個人手上的筆跡最後會自動疊合排好,不會有人的字被別人塗掉、也不會因為兩人同時下筆就整份作業毀掉。CRDT 就是負責在背後做這件「自動排版整合」工作的數學演算法,這也是為什麼 Docmost 的多人協作可以做到跟 Google 文件一樣順暢 🔃
🚨 畫重點!千萬別踩雷:
官方首頁把「企業級安全」當成主要賣點宣傳,但 MFA 跟 SSO 這種現代系統「最基礎」的資安防護,在免費開源版裡是被徹底閹割的。如果你自架的是社群版,你的登入方式跟十年前的網站沒兩樣——只有信箱加密碼,這跟宣傳形象形成了強烈諷刺的落差 🤦♂️
🖥️ 系統需求與依賴風險:輕量外表下的隱形門檻
把 Docmost 部署到正式環境,絕對不是點幾下滑鼠「下一步」就能搞定的任務。它是一套現代化的微服務架構應用,底層技術堆疊相當厚重 🧱
- ⭐ 硬體建議:官方與社群實戰經驗強烈建議至少 2 核心 CPU + 4GB 記憶體。若硬塞進 1〜2GB 記憶體的廉價 VPS,多人同時編輯時極易觸發 Linux 的 OOM(記憶體不足)機制,把核心容器強制擊殺
- ⭐ 三大核心容器:基於 NestJS/Fastify 開發的 Node.js 應用本體、負責永久儲存的 PostgreSQL 資料庫、負責即時通訊與快取的 Redis 伺服器
- ⭐ 儲存空間:支援本地磁碟儲存,但官方建議透過環境變數串接 S3 相容的物件儲存服務(如 MinIO),避免日後搬家的痛苦
🧑🔧 DevOps 小知識:Redis 不是可有可無的加速器
很多人以為 Redis 只是「讓網站跑快一點」的快取層,但在 Docmost 的架構裡,Redis 扮演的是即時協作系統的「大聲公」——負責 Pub/Sub messaging,讓所有正在編輯同一頁面的使用者能即時收到彼此的修改。一旦 Redis 容器因記憶體不足意外重啟,或網路設定有差池,所有正在線上編輯的人會瞬間斷開同步,畫面直接卡死或被迫轉為唯讀。另外,前後端的即時通訊高度依賴 WebSocket,設定 Nginx 反向代理時務必正確配置 Upgrade 與 Connection 標頭,否則頁面能開,但即時編輯功能會直接失效 🆖
關於敏感資訊儲存機制,Docmost 的核心加密、JWT 憑證簽章與 Session 管理全部仰賴一組叫 APP_SECRET 的環境變數,官方強制要求必須是透過 OpenSSL 產生、至少 32 字元的高強度隨機字串 🔐
🚨 畫重點!千萬別踩雷:
如果不慎把包含 APP_SECRET 的 docker-compose.yml 上傳到公開的 GitHub 儲存庫,駭客能輕易偽造任意使用者的登入憑證,直接接管整個系統。這組密鑰的保密等級,等同於你家保險箱的密碼,絕對不能出現在任何公開版本控制紀錄中 🛑
🧐 門檻評估:完全不懂程式的人能順利安裝嗎? 👉 評分:⭐⭐(滿分五星)。雖然網路上有 Railway、Elestio 這類一鍵部署服務,但若要真正擁有「資料主權」並長期在自己的伺服器上營運,安裝者必須具備 Linux 命令列基礎、熟悉 Docker 容器化技術、懂得配置 Nginx 或 Traefik 反向代理與 SSL 憑證,任何一個環節出錯都可能讓系統整個開天窗 ⚠️
🎭 情境對應矩陣:你到底該不該用?
🙋 一般輕量使用者(筆記控/學生)
這類人通常是 Notion 重度使用者,因為擔心隱私或想離線存取才尋找自架方案 🕵️♂️
適合度:低〜中。 除非你就是想練習自架、享受折騰的樂趣,否則純粹記筆記用 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 這類虛擬區域網路存取,絕對不要把埠口直接對公網開放;務必定期執行資料庫備份;務必保持在最新版本以取得安全修補 🛡️
🔐 隱私與資料安全: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 就像是有人把一個寫著「../../../你家保險箱」地址的假包裹夾帶進正常快遞裡,而收發室(伺服器的解壓縮程式)沒有檢查地址是否合法,就照著假地址把包裹直接送進了你家保險箱,讓外人得以覆寫系統最核心的檔案。
🧐 企業機密資料適合透過此工具處理嗎? 上述漏洞多數集中在跨站腳本攻擊(XSS)與權限驗證繞過,顯示開發團隊在追求功能開發速度時,犧牲了嚴謹的安全審查。若使用最新版本並關閉遙測,安全性已大幅改善;但站在防禦縱深的考量,強烈建議企業絕不能將 Docmost 直接暴露在公網,必須隱藏在企業 VPN 之後才能安全處理機密資料 🛡️
📜 授權條款合規風險:AGPL 這個「傳染病條款」
Docmost 的原始碼庫採用了經典且嚴厲的「混合式授權」,這對企業法務部門是必須高度警戒的雷區 ⚡
一般開源授權(如 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 協作功能又受嚴格監管,這是唯一安全解。
💰 商業模式與「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 時,雖然軟體本身可以免費自架,但為了滿足最基本的資安要求,隱藏的採購成本與廠商鎖定風險依然高昂 💷
🏗️ 自架 vs 雲端代管服務取捨
對不想花心力維護 Linux 伺服器的人,市場上也有 Railway、Opsily、Elestio 這類第三方託管平台 ☁️
| 比較維度 | 🖥️ Docker 裸機自架版 | ☁️ 第三方託管/雲端版 |
|---|---|---|
| 建置複雜度 | 極高。需精通 Docker Compose、網路路由、Postgres 掛載、SSL 憑證簽發 | 極低。一鍵部署,自動配置好資料庫與快取 |
| 資料主權與隱私 | 絕對控制。可部署在完全阻絕網際網路的內網環境 | 中等。資料存放於第三方主機商機房,受該國法規管轄 |
| 基礎設施成本 | 極低。每月約 $5〜$10 美金 的 VPS 即可支撐小團隊 | 視用量浮動。依運算資源與時數計費,通常高於自管 VPS |
| 維護與災難復原 | 高風險。需自行撰寫腳本定期備份資料庫,升級失敗需自行排除 | 低風險。通常提供自動化每日加密異地備份,可一鍵版本回滾 |
| SSO/MFA 功能限制 | 無法使用。仍受軟體底層金鑰限制,需向官方購買授權碼 | 無法使用。即便用託管平台,仍需自備企業授權金鑰 |
😤 真實使用者痛點(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 連不上、中文搜尋失效這類常見問題,先去那邊搜尋關鍵字通常都能找到解法。
💥 負面事件與信任危機
❶ 事件一:被炎上的「貪婪定價」
在知名自架愛好者論壇 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 的使用者,如今面臨既得不到更新、又因資料庫不相容而無法退回官方版的死胡同 🤡
🔄 替代方案冷酷比較
| 比較維度 | 📝 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。
📊 綜合風險評級
| 使用族群 | 風險等級 | 主要風險與建議行動 |
|---|---|---|
| 一般用戶/學生 | 🟡 中低 | 缺乏運維能力,斷電或升級錯誤易導致資料庫損毀。無 MFA 防護,易遭撞庫。建議:嚴禁對外開放埠口,搭配 Tailscale/Cloudflare Tunnel 存取;務必設定 cron排程定期備份資料庫 |
| 獨立開發者/新創團隊 | 🟢 低 | 預設會回傳系統活躍數據給官方;Redis 崩潰會造成全員斷線。建議:加入 DISABLE_TELEMETRY=true;確保記憶體大於 4GB 並配置 Redis 持久化 |
| 中大型企業/監管機構 | 🟠 中 | 免費版無稽核日誌與 SSO,無法通過 ISO 27001;過去一年爆發包含 ZipSlip 在內的高危漏洞。建議:編列預算購買 Business 方案;嚴格隔離在公司 VPN 內網;AI 功能強制指向本地 Ollama,嚴禁串接 OpenAI |
🏆 總結評分(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 是否更符合你的預算與安全期待 🧐
🧰 附錄:手把手 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_PASSWORD 與 DATABASE_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 網頁介面重新搜尋中文關鍵字即可驗證是否成功。
📚 參考資料與延伸資源
- 📌 Docmost 官方 GitHub 專案 [31]
- 📌 Docmost 官方安裝文件 [48]
- 📌 Docmost 環境變數完整說明 [49]
- 📌 Docmost 定價方案頁面 [50]
- 📌 CVE-2026-22249(ZipSlip 漏洞)官方紀錄 [51]
- 📌 Reddit — Docmost greedy pricing 討論串 [52]
- 📌 Forkmost 分叉專案(EOL 封存) [53]
- 📌 GitHub Issue #101(全域搜尋需求) [54]
- 📌 GitHub Issue #928(Draw.io 大圖無限讀取) [55]
- 📌 docmost 為什麼中文搜尋會找不到內容 — CAPDIO [56]















