开源协作wiki和文档软件Docmost

在这里插入图片描述

什么是 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.mfbz.cn/a/773222.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

从OpenAI停服看中国市场:国产替代崛起的机遇与挑战

一、OpenAI 停服事件背景 OpenAI 自 2020 年推出 GPT-3 以来&#xff0c;在全球范围内引起了极大的反响。其强大的自然语言处理能力使其成为许多企业和开发者的首选工具。然而&#xff0c;2024 年 6 月 25 日&#xff0c;许多中国用户收到了一封来自 OpenAI 的邮件&#xff0c…

《地平线开发板小技巧》-- 备份与恢复SD卡镜像

在我们的机器人系统开发过程中&#xff0c;需要提前安装配置操作系统和依赖项&#xff0c;将这些依赖全部安装完成后&#xff0c;将系统镜像备份。在之后的系统安装中只要将备份好的镜像烧录进开发板中&#xff0c;岂不快哉~ 下面讲的便是地地平线开发板中镜像备份与恢复过程 …

人脸识别考勤系统

人脸识别考勤系统是一种利用生物识别技术进行自动身份验证的现代解决方案&#xff0c;它通过分析和比对人脸特征来进行员工的出勤记录。这种系统不仅提升了工作效率&#xff0c;还大大减少了人为错误和欺诈行为的可能性。 一、工作原理 人脸识别考勤系统的核心在于其生物识别…

Vue3进度条nprogress(手机端、PC端通用)

Vue3进度条nprogress是一个用于显示页面加载进度的库。要在Vue3项目中使用nprogress&#xff0c;需要先安装它&#xff0c;然后在你的项目中引入和使用。 安装nprogress npm install nprogress --save配置nprogress 在目录src下创建nprogress文件夹&#xff0c;里面创建nprogr…

Python面试宝典第6题:有效的括号

题目 给定一个只包括 (、)、{、}、[、] 这些字符的字符串&#xff0c;判断该字符串是否有效。有效字符串需要满足以下的条件。 1、左括号必须用相同类型的右括号闭合。 2、左括号必须以正确的顺序闭合。 3、每个右括号都有一个对应的相同类型的左括号。 注意&#xff1a;空字符…

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

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

拆解COLA框架

COLA 是 Clean Object-Oriented and Layered Architecture的缩写&#xff0c;代表“整洁面向对象分层架构”。由阿里大佬张建飞所提出的一种基于DDD和代码整洁理论所诞生的实践理论框架&#xff0c;详细内容可阅读《程序员的底层思维》和相关git代码去了解 项目地址&#xff1a…

在地图上根据经纬度,画一个矩型围栏,设置每个点的经纬度

在做一个需求时有一个小点就是添加一个配送区域(5公里直径内的)矩形围栏 我做的比较简单 大家看看有没有帮助, 也是精简代码。测试效果上相对是精准的 //谷歌&#xff0c;根据经纬度获取以它为中心半径为5公里内的矩形的四个点经纬度getDefalutPoints (lng: number, lat: num…

lt6911UXC 国产原装 高性能HDMI2.0转MIPI DSI / CSI芯片方案 提供LT 开发资料包及在线软硬件技术支持!

1.说明 LT6911UXC是一款高性能HDMI2.0到MIPI DSI / CSI转换器&#xff0c;用于VR&#xff0c;智能电话&#xff0c;显示应用。 HDMI2.0输入支持高达6Gbps的数据速率&#xff0c;从而为4k 60Hz视频提供足够的带宽。还支持HDCP2.2进行数据解密。 对于MIPI DSI / CSI输出&#xf…

企业数据API平台:获取企业多维度信息

数据API平台是指提供一系列预先定义的接口、协议与工具&#xff0c;允许不同应用程序或系统之间进行数据交换和通信的平台。这些接口被称为数据API&#xff08;Data Application Programming Interface&#xff09;&#xff0c;是数据管理系统或应用程序提供的一组开放式接口。…

Linux手动安装JDK1.8

1、下载要安装的jdk安装包文件 官网下载地址&#xff1a;https://www.oracle.com/cn/java/technologies/downloads/ 2、上传jdk安装包至要安装服务器 3、在要安装jdk位置使用命令解压安装包 安装路径: /usr/local/java 解压安装包&#xff0c;解压命令 tar -zxvf /install…

【博客21】缤果Qt5仿小米耳机APP布局_PC端软件(高级篇)

小米耳机 备注&#xff1a;此软件只是简单的实现布局和界面跳转逻辑, 并未加入小米协议相关内容,因需要鉴权方式验证,故无法进行通讯编程. 开发工具: qt-opensource-windows-x86-5.14.2 (编程语言C) Android反编译工具: apktool 小米小爱开放平台 - 语音服务平台 - 文档中…

3-1 激活函数和神经网络思想

3-1 激活函数和神经网络思想 主目录点这里

android应用的持续构建CI(四)-- 依赖环境(兼容多版本的gradle和jdk)

一、背景 android应用的构建前提是&#xff0c;安装好了gradle和jdk。在实际使用的过程中&#xff0c;不同的android应用&#xff0c;对gradle和jdk的版本要求不一。 于是&#xff0c;在jenkins服务器上&#xff0c;我们需要安装多种版本的gradle和jdk。 安装过jdk的小伙伴应…

Jenkins 使用 Publish over SSH进行远程访问

Publish over SSH 是 Jenkins 的一个插件,可以让你通过 SSH 将构建产物分发到远程服务器。以下是如何开启 Publish over SSH 的步骤: 一、安装 Publish over SSH 插件 在 Jenkins 中,进入 "Manage Jenkins" > "Manage Plugins"。选择 "Availab…

【spring MVC的执行流程】

SpringMVC可以说是Servlet的封装&#xff0c;屏蔽了Servlet的很多细节&#xff0c;比如Servlet再获取参数的时候需要不停地getParameter,现在只要在SpringMVC方法定义对应的JavaBean&#xff0c;只要属性和参数名一致&#xff0c;SpringMVC就可以帮我们实现将参数封装到JavaBea…

基础扫盲:js作用域及其优先级,有示例代码。

在 JavaScript 中&#xff0c;作用域指的是变量和函数的可访问性和可见性。 JavaScript 中的作用域有以下几种&#xff1a; 1. 全局作用域&#xff08;Global Scope&#xff09;&#xff1a;全局作用域是指在代码中任何地方都可以访问的作用域。在全局作用域中声明的变量和函数…

DFS之连通性模型——AcWing 1112. 迷宫

DFS之连通性模型 定义 DFS&#xff08;深度优先搜索&#xff0c;Depth-First Search&#xff09;之连通性模型主要用于图论问题中判断图的连通性&#xff0c;即确定图中的所有节点是否可以通过边相互到达。 DFS&#xff08;深度优先搜索&#xff0c;Depth-First Search&…

深度学习——深度学习中感受野的计算

感受野 在卷积神经网络&#xff08;CNN&#xff09;中&#xff0c;感受野&#xff08;Receptive Field&#xff09; 是一个非常重要的概念。它描述了网络中某一层的输出&#xff08;通常是特征图上的一个像素点&#xff09;所对应的输入图像上的空间范围。这个范围代表了该输出…

Jelly Merge | Template + Editor(休闲益智游戏包)

Jelly Merge是Watermelon Games开发的一款完整游戏。 这款完全可定制的益智游戏具有简单但超级有趣的游戏玩法。 您下一次成功的完美起点&#xff01; 我们的优势 &#x1f9d1;&#x1f3fb;‍&#x1f4bb; 不和谐支持 &#x1f5c3;️ 详细文档 &#x1f6e0;️易于使用的工…