群晖 DSM 7.3 部署 Syncthing:用 Container Manager 稳定运行

整理在群晖 DSM 7.3 中通过 Container Manager 部署 Syncthing 的关键步骤,包括 PUID/PGID、端口、目录映射和首次安全设置。

在群晖 DSM 7.3 中部署 Syncthing,推荐使用 Container Manager(Docker)运行。这样升级、迁移和重建都更清晰,也方便把配置目录和需要同步的共享文件夹分开管理。

Syncthing 需要读写群晖上的共享文件夹。部署时最容易出问题的地方不是镜像本身,而是运行用户权限和目录映射:容器要用正确的 PUIDPGID 启动,并且网页端填写的同步路径必须是容器内路径。

准备工作

先通过 SSH 登录群晖,查询用于运行 Syncthing 的用户 ID:

1
id 你的管理员用户名

记下返回结果里的 uidgid。常见情况是 uid1026 左右,gid100。后面会把它们分别填到 PUIDPGID

然后在 File Station 中进入 docker 共享文件夹,新建目录:

1
/docker/syncthing

这个目录用于保存 Syncthing 的配置文件、数据库和运行状态。后续重建容器时,只要这个目录还在,配置就能保留下来。

下载 Syncthing 镜像

打开群晖的 Container Manager,进入左侧“注册表”,搜索:

1
syncthing

选择官方镜像 syncthing/syncthing,标签使用 latest,下载完成后进入“映像”,选中 syncthing/syncthing 并点击“运行”。

创建容器

容器名称可以直接填写:

1
syncthing

建议勾选“启用自动重新启动”,这样群晖重启后 Syncthing 会自动恢复运行。

配置环境变量

在高级设置里的环境变量区域添加或修改:

1
2
3
PUID=1026
PGID=100
TZ=Asia/Shanghai

其中 PUIDPGID 要替换成你前面通过 id 用户名 查到的真实值。Syncthing 后续读写共享文件夹时,会以这个用户身份访问群晖文件系统。

固定端口

为了后续访问和排错方便,建议手动固定端口映射:

容器端口 本地端口 协议 用途
8384 8384 TCP Web 管理界面
22000 22000 TCP 数据同步传输
22000 22000 UDP QUIC 数据传输
21027 21027 UDP 局域网发现

如果群晖防火墙已开启,也要放行这些端口。只在局域网内使用时,至少要确保 8384 能从你的电脑访问。

配置目录映射

目录映射分两类:一类是 Syncthing 自己的配置目录,另一类是你希望同步的群晖共享文件夹。

配置目录必须这样映射:

群晖宿主机路径 容器内装载路径
/docker/syncthing /var/syncthing

然后继续添加需要同步的数据目录。例如你想同步群晖上的 /volume1/NasData,可以这样映射:

群晖宿主机路径 容器内装载路径
/volume1/NasData /NasData

这里要特别注意:以后在 Syncthing 网页端添加文件夹时,填写的是容器内路径,例如:

1
/NasData

不要填写群晖宿主机路径 /volume1/NasData。Syncthing 运行在容器里,只能看到你映射进去的容器内路径。

如果要同步多个共享文件夹,可以继续添加多条映射,例如:

1
2
3
/volume1/Photos  ->  /Photos
/volume1/Backup  ->  /Backup
/volume1/NasData ->  /NasData

启动并访问

确认环境变量、端口和目录映射无误后,点击“完成”启动容器。

然后在浏览器打开:

1
http://你的群晖IP:8384

进入 Syncthing 管理界面后,第一件事是设置 Web 管理界面的用户名和密码。路径为:

1
操作 -> 设置 -> 图形用户界面

不要让未设置密码的 Syncthing 管理界面长期暴露在局域网里。

添加同步文件夹

点击“添加文件夹”,在“文件夹路径”中填写前面设置的容器内路径,例如:

1
/NasData

如果权限配置正确,Syncthing 就可以读写这个共享文件夹。之后再添加远端设备,并选择要共享的文件夹,就可以开始同步。

小结

群晖 DSM 7.3 上部署 Syncthing 的关键点有三个:

  • 用 Container Manager 运行 syncthing/syncthing
  • 用正确的 PUIDPGID 解决共享文件夹读写权限;
  • 在 Syncthing 网页端使用容器内路径,而不是群晖宿主机路径。

只要这三点配置正确,Syncthing 在群晖上会比较稳定,也方便后续扩展更多同步目录。

记录并分享
使用 Hugo 构建
主题 StackJimmy 设计