Etherpad 是一个基于 nodejs 的在线文档编辑器,服务端性能可以得到保证,多个客户端的操作是即时同步的,而且对文档数据提供了存储的支持。
「软件介绍」
Etherpad 是一个开源的,基于 Web 的在线文本编辑器,支持多人在线同时编辑、协同办公,具有版本历史记录和在线聊天功能,以及自定义使用插件。
目前,Etherpad 在全球拥有数百万活跃用户,被广泛用于教育、工作、研究等领域。
利用Etherpad,你完全可以在5分钟之内搭建出一款在线编辑器软件,并且可以直接部署到你自己的服务器上。
「软件特色」
- 实时协作编辑:支持多人同时编辑一个文档,多人协同办公变得非常容易。无论是在校园项目中还是在企业团队中,都能高效地实现多人协同编辑。
- 版本历史记录:Etherpad具有版本历史记录功能,能够记录编辑过程的每一步变化。这意味着你可以回溯到文档的之前的任何一个版本,查看修改的详细信息。这对于团队协作和审核修改非常有用。
- 在线聊天:内置了聊天功能,可以方便地与小伙伴们进行交流和讨论。只需点击界面上的聊天图标,你就能和团队成员尽情交流啦!聊天功能非常方便,可以帮助团队更好地协作。
- 自定义界面风格:Etherpad还支持自定义界面风格,让你的编辑器与众不同。你可以通过访问特定的链接来设置编辑器的风格,包括顶部菜单、背景区和编辑区的背景。你可以根据个人喜好选择不同的风格,让编辑器更符合你的口味。
- 自定义插件:Etherpad有一个丰富的插件库,为你提供更多的功能扩展。目前已经有超过290个插件可以选择。无论是图片上传、Markdown语法支持、修改字体颜色还是评论功能,Etherpad的插件库应有尽有,可以满足你的各种需求。
「安装」
首先,我们准备一台CentOS 7的虚拟机,因为我在公有云的轻量云主机也是这个系统。在开始之前,我们先更新一下系统和软件。
运行Etherpad需要Node.js环境,更新好系统之后,我们安装较新版本的Node.js和npm(Node Package Manager,用于JavaScript编程语言的包管理器)。
Etherpad默认使用文件系统级的数据库(dirtyDB),但这不适用于生产环境。对于生产环境,推荐使用MySQL或PostgreSQL,我们就使用MySQL吧。
安装完MySQL之后,需要启动数据库并进行基本配置。
接下来,我们运行一个脚本,完成新MySQL实例的基本配置,包括修改一些不安全的默认设置,帮助保护数据库免受一些基本的攻击。我们可以视情况设置 root 用户密码、移除匿名用户、禁止 root 用户远程登录、移除测试数据库等,最后刷新权限表,确保所有的更改立即生效。
然后,我们就可以从Etherpad官方网站下载Etherpad的最新版本。
安装包还是很小的,只有4.6 MB,我们解压一下,视情况将解压后文件夹移动到指定目录,因为是测试,我就不动了。
接下来开始配置Etherpad,首先复制一份settings.json.template得到配置文件settings.json,这个文件控制着Etherpad的许多重要配置选项。
确认是否需要调整IP和端口配置,找到以下字段。
ip用于设置Etherpad监听的IP地址,默认值为0.0.0.0,即监听所有接口。port用于设置Etherpad监听的端口,默认值为9001。
因为我们使用的不是默认数据库,所以需要找到以下字段,调整数据库配置。
将dirty部分注释掉,取消mysql部分的注释,并按需调整数据库的连接配置信息,包括数据库地址、用户名、密码等。为了方便,我就直接用这套配置创建数据库好了。
先登录MySQL,使用以下命令并输入MySQL的root用户的密码:
创建一个新的数据库,名称为etherpad_lite_db,字符集类型为utf8mb4:
创建一个新用户etherpaduser,密码设置为PASSWORD,并授予访问刚创建的数据库的权限。
最后刷新权限表,并退出MySQL命令行。
我们还可以在users部分添加用户名和密码,用来设置一个访问Etherpad管理员界面的管理员账户。
完成这些调整之后,我们还要让程序自己去安装必要的Node.js依赖,安装文件在bin文件夹下面。
等待安装完成之后,Etherpad基本上就可以使用了,我们找到src/node/路径下的server.js,用以下命令启动Etherpad。
查看端口9001是否开放。
然后打开Etherpad的管理页面。
「丰富的插件库」
几百种的插件支持,非常丰富。
如上传图片插件,默认的编辑器是只能写文字的。加载这个插件,就可以实现图片上传功能。
还有支持 MarkDown 语法的插件
修改字体颜色插件
评论相关的插件
Etherpad本身主要是一个实时协作的文本编辑器,它的核心功能集中在文本的协作编辑上。它的标准安装主要支持基本的文本编辑功能,如文字输入、格式设置、颜色标记等。至于对表格、图片或更复杂文档格式的支持,Etherpad 的核心版本并不直接提供这些功能。但是,Etherpad 拥有一个活跃的插件生态系统,我们后续可以通过安装特定的插件来扩展其功能,包括对表格、图片等的支持。
本文暂时没有评论,来添加一个吧(●'◡'●)