avatar

PiDIN

Play In Docker In NAS

  • 首页
  • 关于本站
  • 项目地址
  • 发布文章
Home Etherpad,又一款强大的实时协作Markdown工具 | OpenEuler 社区SIG Meeting同款工具
文章

Etherpad,又一款强大的实时协作Markdown工具 | OpenEuler 社区SIG Meeting同款工具

Posted 2025-05-1 Updated 2025-05- 1
By srebro
19~25 min read

Etherpad 介绍

一款强大的实时协作Markdown笔记工具

Etherpad是一种开源的实时协作编辑器,允许多个用户同时编辑同一文档,并实时显示每个用户的输入内容。Etherpad最初由Etherpad基金会开发,后来被Google收购,现在由Apache软件基金会维护。Etherpad可以用于协作编辑文档、记录会议纪要、编写代码等多种场景。现已开源。

🚢 项目地址

  • github: https://github.com/ether/etherpad-lite
  • 官网:https://docs.etherpad.org/

🚀Etherpad 特征

  • ⚡️实时编辑: 与他人实时协作。立即查看发生的变化。
  • 🛠️ 可扩展的插件框架: 使用插件向 Etherpad 添加新功能。创建自己的或使用。
  • 💬 实时聊天: 在编辑时与他人交流。讨论更改并分享想法。
  • 📝 富文本编辑: 设置文本格式、添加图像等。轻松创建精美的文档。
  • 🌐多语言支持: 首选需要的语言使用 Etherpad。本地化界面和文档。
  • 📦易于安装: 支持 Docker,可Docker 快速入门,使用单个命令安装 Etherpad。

🛠️ 部署 Etherpad

👻 先决条件/要求

  • 最低 512MB RAM(推荐 1GB+)
  • 具备docker,docker-compose 环境

🐳 使用Docker Compose部署

services:
  app:
    user: "0:0"
    #image: etherpad/etherpad:latest
    image: docker.cnb.cool/srebro/pidin/etherpad:latest   ##CNB镜像加速地址
    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
    image: docker.cnb.cool/srebro/pidin/postgres:15-alpine   ##CNB镜像加速地址
    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/pgdata

volumes:
  postgres_data:
  plugins:
  etherpad-var:

浏览器访问Etherpad 地址:http://ip:9001/

image-20250501221456256

image-20250501222949018

image-20250501221632825

Plugins 插件安装

Basic install

Full Features

  • 插件市场 https://static.etherpad.org/index.html

    image-20250501222249960

  • 对于插件,请在 ETHERPAD_PLUGINS 下的 build 部分添加它们

     args:
        ETHERPAD_PLUGINS: >-
          ep_image_upload
          ep_embedded_hyperlinks2
          ep_headings2
          ep_align
					...

🧭 使用Nginx反向代理

#Etherpad
  server {
        listen       443 ssl;
        server_name  etherpad.srebro.cn;  ##替换成自己的域名
        error_page  404              /404/404.html;
        charset utf-8;

		ssl_certificate /home/application/nginx/cert/srebro.cn.pem; 
		ssl_certificate_key /home/application/nginx/cert/srebro.cn.key;
        ssl_session_cache    shared:SSL:1m;
        ssl_ciphers  HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers  on;

	location / {
	proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header x-wiz-real-ip $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-Proto $scheme;
		proxy_pass http://localhost:9001;
        }
}

🎁 获取Etherpad

  • CNB 仓库地址:Etherpad
网络工具
网络工具
License:  CC BY 4.0
Share

Further Reading

Jun 5, 2025

MAZANOKE:离线运行的全能图片处理神器,隐私安全有保障

MAZANOKE 介绍 MAZANOKE 是一个简单的图像优化器,它可以在您的浏览器中运行,离线工作,并在不离开您的设备的情况下保持您的图像。 🚢 项目地址 Github:https://github.com/civilblur/mazanoke 🚀MAZANOKE 特征 🖼️ 在浏览器中优化

Jun 2, 2025

FileCodeBox,轻量匿名文件中转站:快递柜式传输,免注册即传即取

FileCodeBox 介绍 FileCodeBox 是一个基于 FastAPI + Vue3 开发的轻量级文件分享工具。它允许用户通过简单的方式分享文本和文件,接收者只需要一个提取码就可以取得文件,就像从快递柜取出快递一样简单。 🚢 项目地址 Github:https://github.com/

May 26, 2025

Nextcloud平替?FileGator 轻松实现多用户文件管理

FileGator 介绍 FileGator 是一个免费的、开源的、自托管的 Web 应用程序,用于管理文件和文件夹,也是一个强大的多用户文件管理器。可以让管理员和其他用户管理具有不同访问权限、角色和主文件夹的文件。文件上传支持拖放、进度条、暂停和恢复。 🚢 项目地址 Github:https:/

OLDER

零成本私有云方案:基于Docker的NAS远程访问系统构建

NEWER

Sun-Panel | 一款小而美的NAS导航面板,上手简单

Recently Updated

  • MAZANOKE:离线运行的全能图片处理神器,隐私安全有保障
  • FileCodeBox,轻量匿名文件中转站:快递柜式传输,免注册即传即取
  • 「别让灵感溜走!」​​10分钟搭建轻量级笔记应用 Blinko​​ ——让每个想法都有归宿
  • Nextcloud平替?FileGator 轻松实现多用户文件管理
  • Domain Admin:域名SSL证书监控+自动续签,运维从此0焦虑

Trending Tags

网络工具 无线电 人工智能 智能家居 影音娱乐 阅读学习 sre

Contents

©2025 PiDIN. Some rights reserved.

Using the Halo theme Chirpy