PassNAT LogoPassNAT

自建开源协作编辑平台Etherpad,NAS极简部署,数据完全掌控,内网穿透远程访问

作者

小编

发布时间

Curving abstract shapes with an orange and blue gradient

项目介绍

Etherpad 是一个功能强大的实时协作编辑平台,支持数千名用户同时在线编辑。它是一个开源、自托管的文档协作工具,让你可以完全掌控自己的数据。

相比于 Google Docs 等云端服务,Etherpad 让你拥有完整的数据所有权和隐私保护。它支持多人实时协作编辑、完整的数据导出、版本历史追溯,以及丰富的插件生态系统。无论是团队协作、会议记录还是知识库建设,Etherpad 都能胜任。最重要的是,一切都运行在你自己的服务器上,数据永远不会流向第三方。

项目地址:点我跳转

部署安装

如需在外网也能访问你的 Etherpad 实例,建议配置内网穿透服务。推荐使用 帕斯内网穿透,先注册账号备用。详细的配置步骤可以参考 全平台上手攻略

使用 Docker Compose 快速部署

这是最推荐的部署方式,支持一键启动包括数据库在内的完整环境。

复制下列的配置文件保存为 'docker-compose.yml':

1services:
2 app:
3 user: '0:0'
4 image: etherpad/etherpad:latest
5 tty: true
6 stdin_open: true
7 volumes:
8 - plugins:/opt/etherpad-lite/src/plugin_packages
9 - etherpad-var:/opt/etherpad-lite/var
10 depends_on:
11 - postgres
12 environment:
13 NODE_ENV: production
14 ADMIN_PASSWORD: ${DOCKER_COMPOSE_APP_ADMIN_PASSWORD:-admin}
15 DB_CHARSET: ${DOCKER_COMPOSE_APP_DB_CHARSET:-utf8mb4}
16 DB_HOST: postgres
17 DB_NAME: ${DOCKER_COMPOSE_POSTGRES_DATABASE:-etherpad}
18 DB_PASS: ${DOCKER_COMPOSE_POSTGRES_PASSWORD:-admin}
19 DB_PORT: ${DOCKER_COMPOSE_POSTGRES_PORT:-5432}
20 DB_TYPE: 'postgres'
21 DB_USER: ${DOCKER_COMPOSE_POSTGRES_USER:-admin}
22 DEFAULT_PAD_TEXT: ${DOCKER_COMPOSE_APP_DEFAULT_PAD_TEXT:- }
23 DISABLE_IP_LOGGING: ${DOCKER_COMPOSE_APP_DISABLE_IP_LOGGING:-false}
24 TRUST_PROXY: ${DOCKER_COMPOSE_APP_TRUST_PROXY:-true}
25 restart: always
26 ports:
27 - '${DOCKER_COMPOSE_APP_PORT_PUBLISHED:-9001}:${DOCKER_COMPOSE_APP_PORT_TARGET:-9001}'
28
29 postgres:
30 image: postgres:15-alpine
31 environment:
32 POSTGRES_DB: ${DOCKER_COMPOSE_POSTGRES_DATABASE:-etherpad}
33 POSTGRES_PASSWORD: ${DOCKER_COMPOSE_POSTGRES_PASSWORD:-admin}
34 POSTGRES_PORT: ${DOCKER_COMPOSE_POSTGRES_PORT:-5432}
35 POSTGRES_USER: ${DOCKER_COMPOSE_POSTGRES_USER:-admin}
36 PGDATA: /var/lib/postgresql/data/pgdata
37 restart: always
38 volumes:
39 - postgres_data:/var/lib/postgresql/data
40
41volumes:
42 postgres_data:
43 plugins:
44 etherpad-var:


打开你的 NAS 设备(飞牛 NAS、群晖、威联通等),找到 Docker 应用或容器管理界面。

选择'从文件上传'或'从 URL 导入',将上述 docker-compose.yml 文件导入。系统会自动识别并下载所需的镜像(etherpad 和 postgres)。

等待镜像下载完成后,点击启动按钮启动容器组。建议勾选'开机自动启动',这样重启 NAS 后服务会自动恢复。

端口设置说明:

容器内部使用 9001 端口运行 Etherpad 服务。默认映射到主机的 9001 端口。如果你的 NAS 上已经有其他服务占用了 9001 端口,可以修改映射配置,例如改为 '9002:9001',这样就能通过 9002 端口访问 Etherpad 了。

存储配置说明:

该项目需要持久化存储以保留编辑内容和数据库信息。系统会自动创建三个数据卷:

'postgres_data':PostgreSQL 数据库存储

'plugins':Etherpad 插件存储

'etherpad-var':应用数据存储

这些数据卷会自动管理,无需手动创建文件夹映射。

环境变量设置说明:

必须设置的环境变量:

'ADMIN_PASSWORD':管理后台密码(默认:admin,建议修改为强密码)

'DOCKER_COMPOSE_POSTGRES_PASSWORD':PostgreSQL 数据库密码(默认:admin,建议修改)

可选设置,保持默认即可:

'DB_CHARSET':数据库字符集(默认:utf8mb4)

'DISABLE_IP_LOGGING':是否禁用 IP 日志(默认:false)

'TRUST_PROXY':是否信任代理(默认:true,用于反向代理场景)

'DEFAULT_PAD_TEXT':新建文档的默认文本(默认:空)

其他变量保持默认值即可,直接启动容器。

创建成功后,打开浏览器访问 'http://你的NAS_IP:9001',就能看到 Etherpad 的欢迎界面了。点击创建新的 Pad,输入名称即可开始协作编辑。管理后台地址为 'http://你的NAS_IP:9001/admin',使用你设置的管理员密码登录。

到此,Etherpad 的部署就完成了。现在你可以邀请团队成员加入,开始实时协作编辑文档吧!

本篇教程结束