avatar

PiDIN

Play In Docker In NAS

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

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

Posted 13 days ago Updated 13 days ago
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

May 13, 2025

DweebUI:一键管理NAS Docker容器,应用商店模板秒级部署

DweebUI 介绍 DweebUI 是一款专为Docker容器设计的轻量级、高性能 Web 管理界面,用于管理容器的免费开源 WebUI;旨在简化容器化应用的部署、监控和管理流程。 Github:https://github.com/lllllllillllllillll/DweebUI 官网:

May 12, 2025

Docker 一键部署倒计时页面:Easy Countdown全设备通用

Easy Countdown 介绍 Easy countdown是一个易于设置的倒计时页面。可以设置为倒计时或计时器。可用于个人生活、工作管理、教育、活动策划等多个领域。 🚢 项目地址 Github:https://github.com/Yooooomi/easy-countdown 🚀Easy

May 6, 2025

三分钟搭建私有云存储!File Browser轻量级文件管理神器

File Browser 介绍 FileBrowser 在指定目录中提供了一个文件管理界面,可用于上传、删除、预览、重命名和编辑您的文件。它允许创建多个用户,并且每个用户都可以拥有自己的目录。它可以用作独立应用程序。 🚢 项目地址 Github: https://github.com/filebr

OLDER

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

NEWER

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

Recently Updated

  • DweebUI:一键管理NAS Docker容器,应用商店模板秒级部署
  • Docker 一键部署倒计时页面:Easy Countdown全设备通用
  • 从厨房到储物间:Grocy 家庭的智能物资管理助手
  • 三分钟搭建私有云存储!File Browser轻量级文件管理神器
  • 📚️ TaleBook | 用NAS打造私人图书馆,一款基于Calibre的个人图书管理器

Trending Tags

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

Contents

©2025 PiDIN. Some rights reserved.

Using the Halo theme Chirpy