开源协作wiki和文档软件Docmost

news2024/11/20 13:31:46

在这里插入图片描述

什么是 Docmost ?

Docmost 是一款开源协作 wiki 和文档软件。它是 ConfluenceNotion 等软件的开源替代品。使用 Docmost 可以无缝创建、协作和共享知识。非常适合管理您的 wiki、知识库、文档等。目前 Docmost 处于测试阶段。

软件的主要特点

安装

在群晖上以 Docker 方式安装。

因为涉及多个容器,采用了 docker-compose 方式安装,将下面的内容保存为 docker-compose.yml 文件

version: '3'

services:
  docmost:
    image: docmost/docmost:latest
    container_name: docmost-app
    depends_on:
      - db
      - redis
    environment:
      APP_URL: 'http://192.168.0.197:3140'
      APP_SECRET: 'G6phWvAVU2JRStChrmJx'
      DATABASE_URL: 'postgresql://docmost:STRONG_DB_PASSWORD@db:5432/docmost?schema=public'
      REDIS_URL: 'redis://redis:6379'
    ports:
      - "3140:3000"
    restart: unless-stopped
    volumes:
      - ./data:/app/data/storage

  db:
    image: postgres:16-alpine
    container_name: docmost-db
    environment:
      POSTGRES_DB: docmost
      POSTGRES_USER: docmost
      POSTGRES_PASSWORD: STRONG_DB_PASSWORD
    restart: unless-stopped
    volumes:
      - ./db:/var/lib/postgresql/data

  redis:
    image: redis:7.2-alpine
    container_name: docmost-redis
    restart: unless-stopped
    volumes:
      - ./redis:/data
  • 容器 docmost-app
可变说明
APP_URLhttp://192.168.0.197:3140Docmost 的访问地址,可以是 IP地址或者域名,其中 IP 为主机的 IP ,端口为本地端口,而不是容器端口
APP_SECRET用于应用程序安全性的随机密钥
DATABASE_URL根据后面的数据库,生成的 PostgreSQL 数据库的连接 URL,如果改了数据库设置,这里要跟着变
REDIS_URLredis://redis:6379Redis 服务的连接 URL,默认的就可以

官方给的示例中 APP_SECRETREPLACE_WITH_LONG_SECRET,如果不修改会导致容器不断重启,日志显示如下:

docmost-app | The Environment variables has failed the following validations:
docmost-app | {"isNotIn":"APP_SECRET should not be one of the following values: REPLACE_WITH_LONG_SECRET"}
docmost-app | Please fix the environment variables and try again. Exiting program...
docmost-app | /app/apps/server:
docmost-app |  ERR_PNPM_RECURSIVE_RUN_FIRST_FAIL  server@0.2.1 start:prod: `cross-env NODE_ENV=production node dist/main`
docmost-app | Exit status 1
docmost-app |  ELIFECYCLE  Command failed with exit code 1.
docmost-app exited with code 1
  • 容器 docmost-db
可变说明
POSTGRES_DBdocmost数据库库名
POSTGRES_USERdocmost数据库用户名
POSTGRES_PASSWORDSTRONG_DB_PASSWORD数据库用户对应的密码

以上只是基本设置,Docmost 还支持 S3 及兼容存储,可以发送邮件。

更多环境变量:https://docmost.com/docs/self-hosting/environment-variables

然后执行下面的命令

# 新建文件夹 docmost 和 子目录
mkdir -p /volume1/docker/docmost/{data,db,redis}

# 进入 docmost 目录
cd /volume1/docker/docmost

# 修改目录权限,否则上传图片会失败
chmod a+rw data

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:3140 就能看到注册界面

  • Workspace Name:工作区名称
  • Your Name:用户名
  • Your Email:邮件地址
  • Password:密码,不能少于 8 个字符

注册成功后的主界面

写作

进入工作区

新建 New page

Notion 一样采用了块操作模式,输入 / 可创建代码块、todo list

基于 Docmost 写下了本文

回到 Home 能看到刚刚更新的文档

右上角是 Docmost 的相关设置

比如我想给创建的空间 General 改个名

修改 Name 就可以

保存之后

再回到 Home,名字已经改过来了

按个人习惯又增加了几个

协作

像工作相关的部分,我们可以邀请成员进行协作

当然前提是我们在安装时,设置了邮件相关的环境变量才行

需要给容器 docmost-app 增加下面这些内容

      MAIL_DRIVER: 'smtp'
      SMTP_HOST: 'smtp.88.com'
      SMTP_PORT: '465'
      SMTP_USERNAME: 'wbsu2003@88.com'
      SMTP_PASSWORD: '<第三方邮件客户端密码>'
      MAIL_FROM_ADDRESS: 'wbsu2003@88.com'
      MAIL_FROM_NAME: 'Docmost'

发个邀请

如果邮件设置没问题,应该很快就会收到邀请邮件

Accept Invite 接受邀请,会跳转到注册界面

默认可能还什么都看不到

回到主账号,添加组,这是为了方便后面授权

填写组名并添加成员

创建完成

然后到空间里授权

默认权限分为三种

另一个账号刷新一下就可以了

参考文档

docmost/docmost: Docmost is an open source collaborative documentation and wiki software. It is an open-source alternative to the likes of Confluence and Notion.
地址:https://github.com/docmost/docmost

Open-source collaborative wiki and documentation software | Docmost
地址:https://docmost.com/

Introduction | Docmost - Documentation
地址:https://docmost.com/docs/

Docmost: Open-source collaborative wiki and documentation software : r/selfhosted
地址:https://www.reddit.com/r/selfhosted/comments/1drd01d/docmost_opensource_collaborative_wiki_and/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1896048.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

go 学习 之 HTTP微服务示例

1. 背景 学习ing 2. 创建文件&#xff1a;server.go go package mainimport ("github.com/gogf/gf/contrib/registry/file/v2""github.com/gogf/gf/v2/frame/g""github.com/gogf/gf/v2/net/ghttp""github.com/gogf/gf/v2/net/gsvc"&…

算法力扣刷题 三十一【150. 逆波兰表达式求值】

前言 栈和队列篇。 记录 三十一【150. 逆波兰表达式求值】 一、题目阅读 给你一个字符串数组 tokens &#xff0c;表示一个根据 逆波兰表示法 表示的算术表达式。 请你计算该表达式。返回一个表示表达式值的整数。 注意&#xff1a; 有效的算符为 、-、* 和 / 。 每个操作…

九浅一深Jemalloc5.3.0 -- ⑨浅*gc

目前市面上有不少分析Jemalloc老版本的博文&#xff0c;但5.3.0却少之又少。而且5.3.0的架构与之前的版本也有较大不同&#xff0c;本着“与时俱进”、“由浅入深”的宗旨&#xff0c;我将逐步分析Jemalloc5.3.0的实现。 另外&#xff0c;单讲实现代码是极其枯燥的&#xff0c;…

【Unity配置数据文件】ScriptableObject核心应用

&#x1f468;‍&#x1f4bb;个人主页&#xff1a;元宇宙-秩沅 &#x1f468;‍&#x1f4bb; hallo 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍&#x1f4bb; 本文由 秩沅 原创 &#x1f468;‍&#x1f4bb; 专栏交流&#x1f9e7;&…

国标GB28181视频汇聚平台LntonCVS视频监控安防平台与国标协议对接解决方案

应急管理部门以“以信息化推动应急管理能力现代化”为总体目标&#xff0c;加快现代信息技术与应急管理业务深度融合&#xff0c;全面支持现代应急管理体系建设&#xff0c;这不仅是国家加强和改进应急管理工作的关键举措&#xff0c;也是应对日益严峻的应急管理形势和满足公众…

c语言函数递归与迭代详解(含青蛙跳台阶问题详解)

文章目录 前言1. 递归是什么递归的思想递归的限制条件 2. 两个例子举例2&#xff1a;求n的阶乘分析&#xff1a;实现进一步分析 举例2&#xff1a;顺序打印一个整数的每一位分析代码实现 3. 递归与迭代举例3&#xff1a;求第n个斐波那契数 4. 拓展问题&#xff1a;青蛙跳台阶 前…

GPT-5的飞跃:从高中生到博士生,人工智能将如何重塑我们的未来?

文章目录 每日一句正能量前言GPT-5技术突破预测算法进步理解力提升推动行业发展社会影响结论 智能系统人类协作智能系统与人类协作的未来&#xff1a;GPT-5的角色与展望辅助决策增强创造力复杂任务处理人机协同的未来图景结论 迎接AI技术变革策略教育策略职业发展策略政策制定策…

探索视频合成新境界:加快加长视频生成,PAB加速与ExVideo延展技术介绍

一、摘要 随着人工智能技术的不断进步&#xff0c;视频合成领域正迎来前所未有的发展机遇。本文介绍近期两项视频生成方向的创新技术&#xff1a;PAB&#xff08;Pyramid Attention Broadcast&#xff09;和ExVideo。这两篇文章合在一起主要介绍如何提升视频生成的速度与长度&a…

无人直播系统源码开发使用流程-支持抖音,快手,视频号,小红书,美团

AI自动直播系统&#xff1a;该系统集成了丰富的可个性化文案库&#xff0c;具备独特而吸引人的内容。它能够自主进行语音讲解&#xff0c;并在直播过程中与观众进行有效的互动。此外&#xff0c;系统还支持团购商品的自动上架和下架&#xff0c;以及与之配套的推广话.集星云推是…

【C#】函数方法、属性分文件编写

1.思想 分文件编写是面向对象编程的重要思想&#xff0c;没有实际项目作为支撑很难理解该思想的精髓&#xff0c;换言之&#xff0c;一两个函数代码量因为太少无法体现分文件编写减少大量重复代码的优势。 2.项目结构介绍 整项目的名称叫AutoMetadata&#xff0c;是一个基于W…

(论文版)深度学习 | 基于 VGG16-UNet 语义分割模型的猫狗图像提取研究

Hi&#xff0c;大家好&#xff0c;我是半亩花海。本实验本项目基于 VGG16-UNet 架构&#xff0c;利用 Labelme 标注数据和迁移学习&#xff0c;构建高效准确的猫狗图像分割模型。通过编码器-解码器结构&#xff08;特征提取-上采样&#xff09;提升分割精度&#xff0c;适应不同…

vue+openlayers之几何图形交互绘制基础与实践

文章目录 1.实现效果2.实现步骤3.示例页面代码3.基本几何图形绘制的关键代码 1.实现效果 绘制点、线、多边形、圆、正方形、长方形 2.实现步骤 引用openlayers开发库。加载天地图wmts瓦片地图。在页面上添加几何图形绘制的功能按钮&#xff0c;使用下拉列表&#xff08;sel…

SLAM 精度评估

SLAM 精度的评估有两个最重要的指标&#xff0c;即绝对轨迹误差&#xff08;ATE&#xff09;和相对位姿误差&#xff08;RPE&#xff09;的 均方根误差&#xff08;RMSE&#xff09;: 绝对轨迹误差:直接计算相机位姿的真实值与 SLAM 系统的估计值之间的差值&#xff0c;首先将…

Modbus通信协议学习——调试软件

Modbus通信协议是一种广泛应用于工业自动化领域的串行通信协议&#xff0c;由Modicon公司&#xff08;现为施耐德电气Schneider Electric&#xff09;于1979年开发。该协议已成为工业电子设备之间通信的通用标准&#xff0c;支持多种设备和系统之间的数据交换。以下是对Modbus通…

【内网渗透】从0到1的内网渗透基础概念笔记

目录 域 域的介绍 单域 父域和子域 域树 域森林 域名服务器 活动目录 活动目录介绍 域内权限 组 域本地组 全局组 通用组 总结 示例 A-G-DL-P策略 重要的域本地组 重要的全局组、通用组 安全域划分 域 域的介绍 Windows域是计算机网络的一种形式&#xf…

零基础学习MySQL---库的相关操作

顾得泉&#xff1a;个人主页 个人专栏&#xff1a;《Linux操作系统》 《C从入门到精通》 《LeedCode刷题》 键盘敲烂&#xff0c;年薪百万&#xff01; 一、创建数据库 1.语法 CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [, create_specification] .…

vscode(七):设置不同括号有不同颜色

一、打开vscode 的setting界面 输入 bracket pair &#xff0c;将Editor › Guides: Bracket Pairs这一项设置为true 二、效果 不同括号对具有不同的颜色

系统提示我未定义与 ‘double‘ 类型的输入参数相对应的函数 ‘finverse‘,如何解决?

&#x1f3c6;本文收录于「Bug调优」专栏&#xff0c;主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案&#xff0c;希望能够助你一臂之力&#xff0c;帮你早日登顶实现财富自由&#x1f680;&#xff1b;同时&#xff0c;欢迎大家关注&&收藏&&…

【Linux】多线程(互斥 同步)

我们在上一节多线程提到没有任何保护措施的抢票是会造成数据不一致的问题的。 那我们怎么办&#xff1f; 答案就是进行加锁。 目录 加锁&#xff1a;认识锁和接口&#xff1a;初始化&#xff1a;加锁 && 解锁&#xff1a;全局的方式&#xff1a;局部的方式&#xff1a…

rtpengine_mr12.0 基础建设容器运行

目录 Dockerfile rtpengine.conf 容器内编译安装 RTPEngine 正常提供功能 1. 启动RTPEngine服务 2. 删除 RTPEngine服务 3. 加载内核模块 检查所有进程是否正在运行 上传到仓库 博主wx&#xff1a;yuanlai45_csdn 博主qq&#xff1a;2777137742 后期会创建粉丝群&…