收起左侧

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

8
回复
943
查看
[ 复制链接 ]

27

主题

74

回帖

0

牛值

初出茅庐

2026-1-29 23:12:28 显示全部楼层 阅读模式

在单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

2

主题

2

回帖

0

牛值

江湖小虾

2026-2-28 15:10:18 显示全部楼层

Invalid URL

Go to login page

Joplin Server v3.5.2, copyright © 2021-2026 JOPLIN.

打开里面这样,点[去](Go to login page)没反应 闪现一下就没了

[img]https://cdn.jsdelivr.net/gh/master-of-forums/master-of-forums/public/images/patch.gif[/img]
看不到你发的图片  详情 回复
2026-2-28 17:26

27

主题

74

回帖

0

牛值

初出茅庐

2026-2-28 17:26:09 楼主 显示全部楼层
sycpiek 发表于 2026-2-28 15:10
Invalid URL
Go to login page
Joplin Server v3.5.2, copyright © 2021-2026 JOPLIN.

看不到你发的图片

0

主题

15

回帖

0

牛值

江湖小虾

2026-3-4 01:19:13 显示全部楼层

参考教程并没有安装成功 反复看了网上很多文档都以失败告终 最后问了deepseek几轮后成功 数据库固定用版本17的 joplin镜像拉取最新的latest

dockercompose文件内容如下

version: '3'
services:
    db:
        image: postgres:17
        container_name: joplin-db
        volumes:
            # 映射数据卷到本地,用于持久化存储笔记数据
            - ./data/postgres:/var/lib/postgresql/data
        restart: always
        environment:
            - POSTGRES_PASSWORD=这里替换为你的强密码  # 务必修改为强密码
            - POSTGRES_USER=joplin
            - POSTGRES_DB=joplin

    app:
        image: joplin/server:latest
        container_name: joplin-app
        depends_on:
            - db
        ports:
            # 映射容器端口22300到主机的22300端口
            - "22300:22300"
        restart: always
        environment:
            - APP_PORT=22300
            # 重要:替换为你的访问地址,例如 http://192.168.1.100:22300 或 https://note.domain.com
            - APP_BASE_URL=http://your-domain.com:22300
            - DB_CLIENT=pg
            - POSTGRES_PASSWORD=这里替换为你的强密码  # 必须与上方一致
            - POSTGRES_DATABASE=joplin
            - POSTGRES_USER=joplin
            - POSTGRES_PORT=5432 # 注意:这里是容器内部端口,保持5432不变
            - POSTGRES_HOST=db
            # 添加时区设置,避免时间同步问题
            - TZ=Asia/Shanghai
还是AI靠谱,哈哈  详情 回复
2026-3-4 08:45

27

主题

74

回帖

0

牛值

初出茅庐

2026-3-4 08:45:04 楼主 显示全部楼层
周杰瘦 发表于 2026-3-4 01:19
参考教程并没有安装成功  反复看了网上很多文档都以失败告终 最后问了deepseek几轮后成功 数据库固定用版本 ...

还是AI靠谱,哈哈
网上找不到相关资料,没办法就尝试了一下 意外的好用  详情 回复
2026-3-4 21:16

0

主题

15

回帖

0

牛值

江湖小虾

2026-3-4 21:16:24 显示全部楼层
纳斯派 发表于 2026-3-4 08:45
还是AI靠谱,哈哈

网上找不到相关资料,没办法就尝试了一下 意外的好用
这个笔记用的人还是少了点  详情 回复
2026-3-4 21:51

27

主题

74

回帖

0

牛值

初出茅庐

2026-3-4 21:51:54 楼主 显示全部楼层
周杰瘦 发表于 2026-3-4 21:16
网上找不到相关资料,没办法就尝试了一下 意外的好用

这个笔记用的人还是少了点
开源的笔记就算再拉垮 毕竟不要钱 要啥自行车呢  详情 回复
2026-3-4 22:20

0

主题

15

回帖

0

牛值

江湖小虾

2026-3-4 22:20:56 显示全部楼层
纳斯派 发表于 2026-3-4 21:51
这个笔记用的人还是少了点

开源的笔记就算再拉垮 毕竟不要钱 要啥自行车呢
说的对,目前这个笔记用的也挺顺手的  详情 回复
2026-3-5 10:58

27

主题

74

回帖

0

牛值

初出茅庐

2026-3-5 10:58:42 楼主 显示全部楼层
周杰瘦 发表于 2026-3-4 22:20
开源的笔记就算再拉垮 毕竟不要钱 要啥自行车呢

说的对,目前这个笔记用的也挺顺手的
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则