Docker部署一个开源的在线协作文档编辑工具『HedgeDoc』

俺是玩机小能手 2024-07-06 17:34:17
创作不受限,Docker部署一个开源的在线协作文档编辑工具『HedgeDoc』

哈喽小伙伴们好,我是Stark-C~

Markdown对于我们文字工作者来说并不陌生,它因为编辑的时候所见即所得,展示出来的时候可读性强等优势被广泛的用于写作、博客、文档等诸多场景,比如说我目前展示给大家看到的这篇文章就是用一个非常棒的markdown编辑器『Typora』创作出来的。

目前Typora虽说优秀,但是它对于我来说也有几个不是很方便的地方。比如它有仅有的3台设备限制并不能满足我这种多台电脑同时创作的需求,还有就是它目前只支持桌面端,我如果想要在碎片时间也能创作,而旁边又没有电脑,就就有点尴尬了~

所以,我就找到了今天这款可以部署在本地的私有文档编辑工具『HedgeDoc』。

关于HedgeDoc

HedgeDoc 是一个开源的在线协作文档编辑工具,类似于 Google Docs。和Typora这种markdown编辑器不同,它提供给我们的是一个Web网页服务,但不需要我们额外的安装客户端。也正是因为如此,我们在任何时候,只要设备上有可供联网的浏览器 ,就能随时打开HedgeDoc开始办公或创作。

功能上HedgeDoc也非常的强大,它允许用户创建、编辑和共享文档,并支持实时协作编辑功能。HedgeDoc 提供了丰富的文本编辑功能,包括 Markdown 格式支持、插入图片、表格等功能。用户可以通过链接邀请他人共同编辑文档,也可以设置权限控制谁可以查看或编辑文档。

有兴趣的小伙伴可以先来试试官方提供的 Demo :https://demo.hedgedoc.org/

官方文档说明:https://docs.hedgedoc.org/

HedgeDoc部署

HedgeDoc的部署需要数据库的支持,对于群晖威联通华硕这种专业性NAS,我们可以直接启用设备自带的 MariaDB 10 数据库。

关于NAS上的数据库搭建可以先看我这篇教程:

https://post.smzdm.com/p/ad980e6d/

这里假设你已经搭建好了MariaDB数据库,打开phpMyAdmin后新建一个 hedgedoc 的空数据库:

用户名:hedgedoc主机名:任意主机(%)密码:随意设置(我这里演示密码设为“123456”)

然后勾选“创建与用户同名的数据库并授予所有权限”。

同时为了中文支持的更好,还需要将数据库的字符集选择为utf8mb4_bin或者utf8mb4_general_cli。

然后在NAS的Docker目录新建一个“hedgedoc”的文件夹,在该文件夹中再建一个“config”的子文件夹。这个文件夹是用于储存我们之后编辑时候上传的图片,相当于图床的作用。

这里以威联通NAS为例,当前面的准备工作全部搞定之后,就可以打开“应用程序”使用docker-compose 代码直接部署即可:

version: '3.7'services: hedgedoc: image: lscr.io/linuxserver/hedgedoc:latest container_name: hedgedoc hostname: hedgedoc environment: - TZ=Asia/Shanghai - PUID=1000 #当前用户UID - PGID=100 #当前用户GID - DB_HOST=192.168.50.35 #数据库地址,即NAS IP - DB_PORT=3307 #数据库的端口 - DB_USER=hedgedoc #数据库用户名 - DB_PASS=123456 #数据库密码 - DB_NAME=hedgedoc #数据库名称 - CMD_DOMAIN=localhost #容器地址,可以是IP,也可以是反代链接地址 - CMD_URL_ADDPORT=false #默认为 true,只有容器端口使用 80 或者 443 时才设为 false - CMD_PROTOCOL_USESSL=false #如果使用反代链接的 https 协议访问则设为 true,反之false - CMD_URL_ADDPORT=false #HedgeDoc 不将端口附加到反代链接中 - CMD_PORT=3019 #容器端口 volumes: - /share/Container/hedgedoc/config:/config #容器持久化配置文件,映射我们前面新建的config子文件夹 ports: - 3019:3019 #端口映射,本地别冲突就行 restart: always

以上代码需要根据注释自行修改。

关于用户UID和DID可以使用命令“id 用户名”获取。

如果你习惯SSH部署,可以将修改好的docker-compose.yml文件放到NAS任意文件夹内,然后运行以下命令:

#进入文件夹cd 文件夹实际路径#启动容器docker-compose up -d

容器部署需要一定的时间,我们可以打开日志看看它的运行情况。如果出现如上图所示“[ls.io-init] done”就说明服务准备就绪了。

同时在“应用程序”中也能看到hedgedoc容器正在运行。

HedgeDoc体验

打开此容器需要说明的是,如果你只是本地使用场景且没做过反向代理,就直接浏览器【http:// NAS的局域网IP:端口号】即可;如果你有外网使用需求做过反向代理,这里就需要浏览器【https:// 反向代理链接】。

首次打开会让我们先注册,注册的方式也很简单,直接使用邮箱注册即可。

HedgeDoc界面还是非常简洁的,原生支持中文好评。我们可以点击“新建笔记”快速开始markdown编辑。

熟悉markdown编辑编辑的小伙伴对此编辑页面可以说是最熟悉不过了,完全是标准的markdown语法操作界面,左边编辑,右边实时显示。除了可以创建的标题、排序、引用等操作,表格也是完美支持。

并且还支持Typora不支持的乐谱显示。

图片可以引用网络图片,也可以直接上传本地图片。因为我部署的时候没有考虑外网使用场景,所以没有做过反向代理,这里显示的图片地址是我本地IP。如果做过反向代理这里就是显示你的反向代理链接了。

文档还支持退出后自动保存。

总结

就我自己最近几天的体验来看,HedgeDoc功能还是很强大的,在markdown编辑方面还是也确实不错,虽说用起来个人觉得还没有Typora方便,不过HedgeDoc作为一款可以部署在网络端的文档编辑工具,可以让我们随时随地方便的文本编辑,或者作为团队的实时协作工具,都是不错的选择。

好了,以上就是今天给大家分享的内容,我是爱分享的Stark-C,如果今天的内容对你有帮助请记得收藏,顺便点点关注,咱们下期再见!谢谢大家~

0 阅读:0

俺是玩机小能手

简介:感谢大家的关注