收起左侧

从单用户到多用户:Joplin Server 如何实现团队笔记平台的自建?

0
回复
59
查看
[ 复制链接 ]

7

主题

5

回帖

0

牛值

江湖小虾

在单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构建完,会生成两个运行的容器:

image.png

此时可能 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

image.png

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

image.png

image.png

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

image.png

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

image.png

Joplin客户端配置

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

Joplin电脑客户端配置

image.png

Joplin手机客户端配置

image.png

❤️ 小结

​ 从单用户到多用户,Joplin Server 是你从个人笔记管理走向团队协作的自然延伸。而飞牛OS + Docker Compose 的强大环境支持,让你的部署变得更加简单可靠。如果你也在寻找一个安全、可扩展、可管理的笔记系统,那么 Joplin Server 是你不可错过的选择。

觉得有用麻烦点赞+转发+推荐,扫码关注下“纳斯派”微信公众号,你的支持是我更新的最大动力❤

收藏
送赞 1
分享

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则