开源 Wiki 神器 Docmost:团队协作知识库的终极解决方案

作者:修己xj日期:2026/4/20

在团队协作中,文档管理始终是一个让人头疼的问题。传统的文档工具要么功能单一,要么价格昂贵,要么数据不在自己手里。今天,我要向大家推荐一款开源的协作式 Wiki 软件 —— Docmost。

什么是Docmost?

Docmost 是一款开源的协作式 Wiki 和文档管理软件,专为团队知识管理而设计。它提供了实时协作、权限管理、空间隔离等企业级功能,同时保持了开源软件的透明性和可控性。

github 地址: github.com/docmost/doc…

文档地址: docmost.com/docs/

web地址: customers.docmost.com/

该项目在github 已有 19.9 k star

核心特性

1. 实时协作编辑

团队多人可同时编辑同一份文档,实时看到彼此的修改,告别文档冲突和版本混乱。

2. 强大的图表支持

内置多种图表工具支持:

  • Draw.io - 流程图和架构图
  • Excalidraw - 手绘风格图表
  • Mermaid - 代码生成图表

3. 灵活的权限管理

  • 空间(Spaces)隔离不同团队或项目
  • 精细的权限控制
  • 用户组(Groups)管理

4. 丰富的互动功能

  • 评论系统
  • 页面历史版本管理
  • 全文搜索
  • 文件附件上传

Docker Compose 部署指南

第一步:创建docker-compose.yml文件

首先创建部署目录docmost,在此目录下创建docker-compose.yml文件,内容如下:

1services:
2  docmost:
3    image: docmost/docmost:latest
4    depends_on:
5      - db
6      - redis
7    environment:
8      APP_URL: 'http://localhost:3000'
9      APP_SECRET: 'REPLACE_WITH_LONG_SECRET' # 至少32位
10      DATABASE_URL: 'postgresql://docmost:STRONG_DB_PASSWORD@db:5432/docmost'
11      REDIS_URL: 'redis://redis:6379'
12    ports:
13      - "3000:3000"
14    restart: unless-stopped
15    volumes:
16      - docmost:/app/data/storage
17
18  db:
19    image: postgres:18
20    environment:
21      POSTGRES_DB: docmost
22      POSTGRES_USER: docmost
23      POSTGRES_PASSWORD: STRONG_DB_PASSWORD
24    restart: unless-stopped
25    volumes:
26      - db_data:/var/lib/postgresql
27
28  redis:
29    image: redis:8
30    command: ["redis-server", "--appendonly", "yes", "--maxmemory-policy", "noeviction"]
31    restart: unless-stopped
32    volumes:
33      - redis_data:/data
34
35volumes:
36  docmost:
37  db_data:
38  redis_data:
39

因为我有redis(redis版本需要7.0以上)和 postgres ,所以我先在部署目录下创建挂载目录及赋权限

1mkdir data
2chmod -R 777 data
3

创建以下docker-compose.yml

1services:
2   docmost:
3     image: docmost/docmost:latest
4     environment:
5       APP_URL: "http://localhost:43000"
6       APP_SECRET: "14cdb9b4-de01-3faa-aff5-65bc2f771745"
7       DATABASE_URL: "postgresql://docmost:docmost@192.168.31.195:5432/docmost"
8       REDIS_URL: "redis://:xj2026@192.168.31.195:6379"
9       TZ: Asia/Shanghai
10     ports:
11       - "43000:3000"
12     restart: unless-stopped
13     volumes:
14       - ./data:/app/data/storage
15

第二步:启动容器

在docker-compose.yml 同级目录下使用以下命令启动容器

1docker-compose up -d 
2

使用以下命令查看启动日志

1docker-compose logs -f 
2

出现以下日志则说明启动成功

第三步:访问系统

在浏览器中输入我们部署服务的地址和端口访问系统

http://192.168.31.195:43000/

系统使用

首次登录系统需要注册账号

修改系统语言为中文

新建页面,在页面中输入/查看命令

多人同时编辑同一份文档

嵌入pdf

折叠块

提示

mermaid

excalidraw

draw.io

状态

还有一些其他特性,家人们自行尝试

总结

Docmost 是一款功能强大、部署简单的开源 Wiki 系统。它完美平衡了功能和易用性,既适合小团队快速搭建知识库,也满足企业级的安全和权限管理需求。

优势:

✅ 开源免费,数据自主可控

✅ 实时协作,提升团队效率

✅ 丰富的图表和嵌入支持

✅ Docker 一键部署

适用场景:

  • 技术团队文档中心
  • 公司内部知识库
  • 产品手册和帮助文档
  • 项目协作空间

开源 Wiki 神器 Docmost:团队协作知识库的终极解决方案》 是转载文章,点击查看原文


相关推荐


Laravel vs ThinkPHP3.x:现代框架对决
普通网友2026/4/11

好的,我们来比较一下 Laravel 和 ThinkPHP 3.x 这两个 PHP 框架的主要特点和差异。请注意,ThinkPHP 3.x 是一个相对较老的版本(ThinkPHP 已发展至 5.x/6.x/8.x),而 Laravel 则代表了更现代的 PHP 开发框架。 核心架构与设计理念 Laravel 设计哲学: 遵循 SOLID 原则和 DRY(Don't Repeat Yourself)原则。强调优雅、简洁、表达力强的代码。架构: 采用了 MVC(Model-View-Co


如何使用edge浏览器打开控制台?
宇宙计算机2026/4/3

如何使用edge浏览器打开控制台? 我们在edge浏览器中,点击F12,打开检查页面。(或者在页面上,鼠标右键 -> 工具) 但是我们点开检查页面以后,有的时候我们的屏幕过小,上面没有中文,我们不知道哪一个才是控制台。 那看下图,下图这个图标就是控制台。 然后我们就能在控制台的右下角键入JavaScript代码了


Linux 基础指令与权限管理完全指南
凤年徐2026/3/26

Linux 基础指令与权限管理完全指南 前言 在开始Linux系统编程之前,掌握常用的Linux命令和权限管理是必不可少的一步。本文将从零开始,带你熟悉Linux环境下的基本操作,包括文件管理、目录操作、文本查看、权限设置等核心内容。无论你是刚接触Linux的新手,还是希望系统梳理知识的老手,这篇文章都能为你提供清晰的指引。 思考:为什么生产环境中很少使用Linux的图形界面?因为图形界面会占用大量系统资源,且远程管理时效率低下,命令行才是Linux的精髓。 一、环境准备与远程登录 1. 查


mcp学习笔记(三)-Mcp传输协议代码示例
Shawn_Shawn2026/3/18

一、三种传输方式详解 1. Stdio 传输 1.1 原理说明 Stdio(标准输入输出)传输是最简单的传输方式。MCP Client 将Server 作为 子进程 启动,通过进程的 stdin 和 stdout 进行双向通信。 关键规则: 每条JSON-RPC 消息以 换行符 \n 分隔 stdout 专用于协议消息,日志/调试信息必须输出到 stderr Client 与 Server 一对一绑定,生命周期同步 1.2 原理图(draw.io) 1.3 交互流程图(draw.io 时


奔图M6200-6500系列打印机拆解教程?
喝酒没肉不香2026/3/9

1.后盖 取下 1 处两个螺丝,撬开 2 的卡爪,取下后盖。 2.左盖 拆下后盖后,撬开 1 处两个卡爪,取下左盖。 3.右盖 拆下后盖后,撬开 1、2 处 6 个卡爪,取下右盖。 4.扫描台 4.1拆下左盖后,取下 1 处的螺丝,拔除 2 处的三根连接线。 4.2取下 1 处的卡环,拔除支撑杆固定销,取下扫描台。 5.引擎板 拆除右盖后,拔除 1 处,取下 2 处螺丝,取下引擎板。 7.高压电源板 7.1取下引擎板后,取下


OpenClaw安装技能的三种方式
可夫小子2026/3/1

OpenClaw安装技能的三种方式 💡 大家好,我是可夫小子,《小白玩转ChatGPT》专栏作者,关注AI编程、AI自动化和自媒体。 OpenClaw很强大,但也需要搭配很多技能才能发挥最大的作用,它的安装方式没有像Claude Code那样复杂,但也还有一些操作过程。在OpenClaw里面,可以通过WebUI的界面,很直观的管理安装的技能。 但如果安装技能呢?今天分享常用的三种方式。 通过官方openclaw命令来配置 通过openclaw config 命令,选择Local→Ski


基于 YOLOv8 的水体污染目标检测系统 [目标检测完整源码]
我是杰尼2026/2/21

基于 YOLOv8 的水体污染目标检测系统 [目标检测完整源码] 一、背景:水体监控为什么需要“计算机视觉”? 在水资源保护与环境治理领域,“看得见问题”往往是治理的第一步。然而在真实场景中,水体监控长期面临以下现实挑战: 水域面积大、人工巡检成本高 污染物种类多、形态变化大 人工判读主观性强、难以量化 传统传感器难以识别“视觉型污染” 随着无人机、高清摄像头、遥感设备的普及,水体数据获取已不再是瓶颈,真正的难点转移到了如何从海量影像中自动识别污染风险。 基于此,本文介绍一套 以 YOLOv


【C++】多态
yuuki2332332026/2/12

前言: 在面向对象编程的学习脉络中,继承机制让代码的复用和层级设计成为可能,但仅靠继承无法完全体现对象行为的灵活性。比如我们通过继承定义了Person基类,以及Student、Soldier等派生类后,若想让不同对象执行 “买票” 这一相同名称的行为时展现出不同逻辑(普通人全价、学生打折、军人优先),单纯的继承语法无法高效实现这种 “一个接口,多种实现” 的需求。而多态作为继承的延伸与升华,恰好解决了这一问题 —— 它让继承体系下的不同对象,对同一行为能做出符合自身特性的响应,是面向对象编程中实


上下文工程(Context Engineering)
uzong2026/2/4

本文整理自 LangChain 博客《Context Engineering for Agents》」更自然 blog.langchain.com/context-eng… 随着大语言模型(LLM)在智能体(Agent)系统中的广泛应用,如何有效管理有限的上下文窗口(Context Window)成为关键挑战。 1. 为什么需要上下文工程? 大语言模型的上下文窗口类似于计算机的 RAM——它是模型的“工作记忆”,但容量有限。当智能体执行长期任务时,会不断累积以下类型的上下文: ● 指令(Inst


墨梅博客 1.2.0 发布与 AI 开发实践 | 2026 年第 4 周草梅周报
草梅友仁2026/1/25

本文在 草梅友仁的博客 发布和更新,并在多个平台同步发布。如有更新,以博客上的版本为准。您也可以通过文末的 原文链接 查看最新版本。 前言 欢迎来到草梅周报!这是一个由草梅友仁基于 AI 整理的周报,旨在为您提供最新的博客更新、GitHub 动态、个人动态和其他周刊文章推荐等内容。 开源动态 本周依旧在开发 墨梅 (Momei) 中。 您可以前往 Demo 站试用:demo.momei.app/ 您可以通过邮箱 admin@example.com,密码momei123456登录演示用管理

首页编辑器站点地图

本站内容在 CC BY-SA 4.0 协议下发布

Copyright © 2026 XYZ博客