Etherpad:一个高度可定制的开源在线文本编辑器

业界 作者:夏晴子 2024-07-18 04:00:07

一个高度可定制的开源在线文本编辑器,提供真正实时的多人协作编辑能力,它具备强大的插件系统,允许用户通过安装插件来扩展功能。支持私有化部署,提供API、iframe、插件等多种嵌入方案。


#github地址

https://github.com/ether/etherpad-lite

#项目官网

https://etherpad.org/

功能特性

实时编辑:支持多人实时协作编辑文档,用户可以即时看到其他人的操作。

插件框架:通过插件系统,用户自由扩展新功能,支持200多插件。

实时聊天:内置了实时聊天功能,便于用户讨论和分享想法 。

富文本编辑:支持文本格式化、图片添加等,文档编辑变得简单。

多语言支持:界面和文档都可以根据用户的语言偏好进行本地化。

自托管:可以自行部署在本地服务器上,确保数据安全和隐私 。

集成支持:提供 API和iframe嵌入能力,允许用户通过编程方式管理 。

版本控制:具备文档历史记录功能,可以追踪每个人的文档修改记录。

Etherpad 安装 

因为Etherpad的插件是通过npm方式下载,本地网络拉取太慢,所以本次部署采用了腾讯云海外节点(感觉腾讯云可以给我宣传费了)

Etherpad提供了多种安装方式,支持在Linux和Windows机器上部署,本次我们依旧老规矩,采用Docker部署:

# docker-compose文件services:  app:    user: "0:0"    image: etherpad/etherpad:latest    tty: true    stdin_open: true    volumes:      - plugins:/opt/etherpad-lite/src/plugin_packages      - etherpad-var:/opt/etherpad-lite/var    depends_on:      - postgres    environment:      NODE_ENV: production      ADMIN_PASSWORD: ${DOCKER_COMPOSE_APP_ADMIN_PASSWORD:-admin}      DB_CHARSET: ${DOCKER_COMPOSE_APP_DB_CHARSET:-utf8mb4}      DB_HOST: postgres      DB_NAME: ${DOCKER_COMPOSE_POSTGRES_DATABASE:-etherpad}      DB_PASS: ${DOCKER_COMPOSE_POSTGRES_PASSWORD:-admin}      DB_PORT: ${DOCKER_COMPOSE_POSTGRES_PORT:-5432}      DB_TYPE: "postgres"      DB_USER: ${DOCKER_COMPOSE_POSTGRES_USER:-admin}      # For now, the env var DEFAULT_PAD_TEXT cannot be unset or empty; it seems to be mandatory in the latest version of etherpad      DEFAULT_PAD_TEXT: ${DOCKER_COMPOSE_APP_DEFAULT_PAD_TEXT:- }      DISABLE_IP_LOGGING: ${DOCKER_COMPOSE_APP_DISABLE_IP_LOGGING:-false}      SOFFICE: ${DOCKER_COMPOSE_APP_SOFFICE:-null}      TRUST_PROXY: ${DOCKER_COMPOSE_APP_TRUST_PROXY:-true}    restart: always    ports:      - "${DOCKER_COMPOSE_APP_PORT_PUBLISHED:-9001}:${DOCKER_COMPOSE_APP_PORT_TARGET:-9001}"  postgres:    image: postgres:15-alpine    environment:      POSTGRES_DB: ${DOCKER_COMPOSE_POSTGRES_DATABASE:-etherpad}      POSTGRES_PASSWORD: ${DOCKER_COMPOSE_POSTGRES_PASSWORD:-admin}      POSTGRES_PORT: ${DOCKER_COMPOSE_POSTGRES_PORT:-5432}      POSTGRES_USER: ${DOCKER_COMPOSE_POSTGRES_USER:-admin}      PGDATA: /var/lib/postgresql/data/pgdata    restart: always    # Exposing the port is not needed unless you want to access this database instance from the host.    # Be careful when other postgres docker container are running on the same port    # ports:    #   - "5432:5432"    volumes:      - postgres_data:/var/lib/postgresql/data/pgdatavolumes:  postgres_data:  plugins:  etherpad-var:

启动服务

docker-compose up -d

启动完成后,访问 http://hostip:9001 打开页面 (记得放行腾讯云安全组)


关注公众号:拾黑(shiheibook)了解更多

赞助链接:

关注数据与安全,洞悉企业级服务市场:https://www.ijiandao.com/
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

公众号 关注网络尖刀微信公众号
随时掌握互联网精彩
赞助链接