在单Joplin用户部署中,我们可以通过 WebDAV 实现了本地同步,虽然已经能满足基本的笔记管理需求,但随着笔记内容的增多,你可能会面临以下问题:
✅ 无法统一管理多个用户的笔记
✅ 难以配置权限和共享管理
✅ 安全性不如服务端部署强
✅ 想要更稳定的同步机制
于是,我决定尝试一种更系统、更安全的方案——Joplin Server 多用户部署。它不仅解决了上述问题,还能让你拥有一个定制化的团队笔记平台。接下来,就让我带你一步步完成部署吧!
🐳 飞牛OS(fnOS)部署 Joplin Server
完整 docker-compose.yml 配置
mkdir -p /vol1/1000/docker/joplin-server/{postgres,data} && cd /vol1/1000/docker/joplin-server
docker-compose.yml(复制即用):
services:
db:
image: postgres:latest
container_name: joplin-db
environment:
- POSTGRES_PASSWORD=你的强密码 #自定义
- POSTGRES_USER=joplin
- POSTGRES_DB=joplin
volumes:
- /vol1/1000/docker/joplin/postgres/data:/var/lib/postgresql #自定义目录
restart: unless-stopped
joplin:
image: joplin/server:latest
container_name: joplin-server
ports:
- "19200:22300" #自定义容器映射端口
environment:
- APP_PORT=22300 #容器内部端口是22300,不要动
- APP_BASE_URL="http://note.nasply.cc" #这里是代理后的域名,必须是外部访问的完整地址,末尾不能有/
# 如果不用代理就用飞牛_Ip+端口这行登入地址改成下面的:
# APP_BASE_URL=http://飞牛_Ip:19200 #飞牛本地Ip:端口
# 可选:添加额外允许的域名(如果有多个域名)
- APP_EXT_URL=http://飞牛NAS_IP:19200 #飞牛本地Ip:端口
- DB_CLIENT=pg
- POSTGRES_PASSWORD=你的强密码 #自定义
- POSTGRES_DATABASE=joplin
- POSTGRES_USER=joplin
- POSTGRES_HOST=db
depends_on:
- db
volumes:
- /vol1/1000/docker/joplin/data:/home/joplin/data #自定义目录
restart: unless-stopped
可能出现的问题
1.Compose构建完,会生成两个运行的容器:

此时可能 joplin-db 容器会出现一直重启状态。
查看 joplin-db 运行日志应该有以下提示:
This is usually the result of upgrading the Docker image without
upgrading the underlying database using "pg_upgrade" (which requires both
versions).
The suggested container configuration for 18+ is to place a single mount
at /var/lib/postgresql which will then place PostgreSQL data in a
subdirectory, allowing usage of "pg_upgrade --link" without mount point
boundary issues.
(这通常是由于升级 Docker 镜像而没有使用 “pg_upgrade” 升级底层数据库(此过程需要两个版本)所导致的。
建议的 18 版本容器配置是在 /var/lib/postgresql 放置一个挂载点,
这样 PostgreSQL 数据就会放在一个子目录中,
从而可以在没有挂载点边界问题的情况下使用 “pg_upgrade link”)
这个错误说明你之前运行过其他版本的 PostgreSQL(可能是 PostgreSQL 13/14),现在升级到了 15,但数据没有迁移。
解决办法:更改yml文件:
volumes:
- /vol1/1000/docker/joplin/postgres:/var/lib/postgresql` #删掉data,DB数据路径冲突。
2. Invalid origin: http://note.nasply.cc
这个错误是 Joplin Server 的跨域安全验证导致的。Joplin Server 会验证请求的来源(Origin)是否在允许的列表中,你的代理域名 note.nasply.cc 没有被正确配置到环境变量中。
- APP_BASE_URL="http://note.nasply.cc" #这里是代理后的域名,必须是外部访问的完整地址,末尾不能有/
Joplin Server WebUi配置
登入界面
- 默认Email:admin@localhost
- Password:admin

添加用户(默认用户演示)


添加新用户时由于没有没有对邮件收发相关的服务进行配置。但是joplin server 新建用户后会给新用户的邮箱发激活邮件,不过也不用担心收不到,可以管理员账户下是能直接查看到的。
添加了个Test123用户,左侧点击Email会有个邮件通知

复制(不要直接点)那个激活链接,点右上角退出管理员账户。新建标签页,粘贴后转到该链接,登陆后就会提示账户激活成功了。

Joplin客户端配置
到此为止,Joplin Server服务器就在Nas搭建好了,现在就可以去下载Joplin Win客户端或者手机客户端,配置同步服务器地址,就可以实现多用户同步了。
Joplin电脑客户端配置

Joplin手机客户端配置

❤️ 小结
从单用户到多用户,Joplin Server 是你从个人笔记管理走向团队协作的自然延伸。而飞牛OS + Docker Compose 的强大环境支持,让你的部署变得更加简单可靠。如果你也在寻找一个安全、可扩展、可管理的笔记系统,那么 Joplin Server 是你不可错过的选择。
觉得有用麻烦点赞+转发+推荐,扫码关注下“纳斯派”微信公众号,你的支持是我更新的最大动力❤
