Files
Sean 6918795716 新增镜像中文简介
新增镜像中文简介
2026-07-13 00:37:24 +08:00

9.8 KiB
Raw Permalink Blame History

image, description, source, canonical, exported_at
image description source canonical exported_at
linuxserver/syncthing LinuxServer.io提供的Syncthing容器,用于跨设备文件同步。 https://xuanyuan.cloud/zh/r/linuxserver/syncthing https://xuanyuan.cloud/zh/r/linuxserver/syncthing 2026-07-12T16:36:12.930Z

轩辕镜像中文简介(在线版): linuxserver/syncthing 中文简介

含镜像标签、拉取命令、部署文档与相关推荐。

linuxserver/syncthing 镜像文档

镜像概述和主要用途

Syncthing 是一款开源的文件同步工具,可替代专有同步和云服务,提供开放、可信和去中心化的文件同步解决方案。您的数据完全由您掌控,可自主选择存储位置、是否与第三方共享以及如何通过互联网传输。

LinuxServer.io 团队提供的此容器镜像具有以下特点:

  • 定期及时的应用更新
  • 简单的用户映射(PGID、PUID)
  • 带有 s6 overlay 的自定义基础镜像
  • 每周基础 OS 更新,在整个 LinuxServer.io 生态系统中共享通用层,以最小化空间占用、停机时间和带宽
  • 定期安全更新

核心功能和特性

  • 去中心化文件同步:无需中心服务器即可在多设备间直接同步文件
  • 安全传输:使用 TLS 加密保护所有数据传输
  • 版本控制:保留文件历史版本,支持文件恢复
  • Web 管理界面:通过直观的 Web UI 管理同步配置和监控状态
  • 跨平台支持:可与 Windows、macOS、Linux、Android 等多种平台设备同步
  • 增量同步:仅传输文件更改部分,节省带宽
  • 冲突解决:智能处理文件冲突,保留双方更改

使用场景和适用范围

  • 个人文件备份与同步:在个人多台设备间同步文档、照片和其他重要文件
  • 团队协作:小型团队内部共享工作文件,无需依赖第三方云服务
  • 家庭媒体共享:在家庭网络中的多台设备间同步媒体文件
  • 服务器备份:在不同位置的服务器之间同步备份数据
  • 开发环境同步:保持多台开发设备环境配置一致

支持的架构

该镜像利用 Docker manifest 实现多平台支持。只需拉取 lscr.io/linuxserver/syncthing:latest 即可获取适合您架构的正确镜像,也可通过标签拉取特定架构的镜像。

支持的架构:

架构 可用 标签
x86-64 ✅ amd64-<version tag>
arm64 ✅ arm64v8-<version tag>

应用设置

注意: Syncthing 开发团队强烈建议为此容器设置密码,因为它监听 0.0.0.0 地址。设置方法:进入 操作 -> 设置 -> 设置用户/密码 配置 Web UI 访问密码。

使用方法和配置说明

Docker Compose (推荐)

---
services:
  syncthing:
    image: docker.xuanyuan.run/linuxserver/syncthing:latest
    container_name: syncthing
    hostname: syncthing # 可选
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Etc/UTC
    volumes:
      - /path/to/syncthing/config:/config
      - /path/to/data1:/data1
      - /path/to/data2:/data2
    ports:
      - 8384:8384
      - 22000:22000/tcp
      - 22000:22000/udp
      - 21027:21027/udp
    restart: unless-stopped

Docker CLI

docker run -d \
  --name=syncthing \
  --hostname=syncthing `# 可选` \
  -e PUID=1000 \
  -e PGID=1000 \
  -e TZ=Etc/UTC \
  -p 8384:8384 \
  -p 22000:22000/tcp \
  -p 22000:22000/udp \
  -p 21027:21027/udp \
  -v /path/to/syncthing/config:/config \
  -v /path/to/data1:/data1 \
  -v /path/to/data2:/data2 \
  --restart unless-stopped \
  lscr.io/linuxserver/syncthing:latest

参数说明

容器通过运行时传递的参数进行配置,格式为 <外部>:<内部>。

网络参数

参数 功能
--hostname= 可选,定义主机名
-p 8384:8384 Web UI 访问端口
-p 22000:22000/tcp 同步监听端口 (TCP)
-p 22000:22000/udp 同步监听端口 (UDP)
-p 21027:21027/udp 协议发现端口

环境变量

参数 功能
-e PUID=1000 用户 ID - 详见下方说明
-e PGID=1000 组 ID - 详见下方说明
-e TZ=Etc/UTC 时区设置,参考 时区列表
-e UMASK=022 可选,覆盖容器内服务的默认 umask 设置

卷映射

参数 功能
-v /config 配置文件存储路径
-v /data1 数据卷 1
-v /data2 数据卷 2(可根据需要添加更多)

环境变量从文件加载(Docker secrets)

可以通过特殊前缀 FILE__ 从文件设置任何环境变量。例如:

-e FILE__MYVAR=/run/secrets/mysecretvariable

这将根据 /run/secrets/mysecretvariable 文件的内容设置环境变量 MYVAR。

用户/组标识符

使用卷映射 (-v 标志) 时,主机 OS 和容器之间可能出现权限问题。通过指定用户 PUID 和组 PGID 可以避免此问题。

确保主机上的任何卷目录都由您指定的相同用户拥有,权限问题将迎刃而解。

此处示例中 PUID=1000 和 PGID=1000,可通过以下命令查找您的用户 ID 和组 ID:

id your_user

示例输出:

uid=1000(your_user) gid=1000(your_user) groups=1000(your_user)

Docker Mods

我们发布了各种 Docker Mods,以启用容器内的其他功能。可通过相关渠道获取适用于此镜像的 Mods 列表以及可应用于任何 LinuxServer.io 镜像的通用 Mods。

支持信息

容器运行时 Shell 访问:

docker exec -it syncthing /bin/bash

实时监控容器日志:

docker logs -f syncthing

容器版本号:

docker inspect -f '{{ index .Config.Labels "build_version" }}' syncthing

镜像版本号:

docker inspect -f '{{ index .Config.Labels "build_version" }}' lscr.io/linuxserver/syncthing:latest

更新说明

大多数镜像都是静态的、版本化的,需要更新镜像并重新创建容器才能更新内部应用。除特殊说明外,不建议或支持在容器内更新应用。

使用 Docker Compose 更新

更新镜像:

  • 所有镜像:
    docker-compose pull
    
  • 单个镜像:
    docker-compose pull syncthing
    

更新容器:

  • 所有容器:
    docker-compose up -d
    
  • 单个容器:
    docker-compose up -d syncthing
    

清理旧镜像:

docker image prune

使用 Docker Run 更新

更新镜像:

docker pull docker.xuanyuan.run/linuxserver/syncthing:latest

停止运行中的容器:

docker stop syncthing

删除容器:

docker rm syncthing

使用相同参数重新创建容器(如果正确映射到主机文件夹,/config 文件夹和设置将被保留)

清理旧镜像:

docker image prune

镜像更新通知 - Diun (Docker Image Update Notifier)

推荐使用 Diun 获取更新通知。不建议或支持使用其他自动更新容器的工具。

本地构建

如需为开发目的或自定义逻辑对这些镜像进行本地修改:

git clone https://github.com/linuxserver/docker-syncthing.git
cd docker-syncthing
docker build \
  --no-cache \
  --pull \
  -t lscr.io/linuxserver/syncthing:latest .

可使用 lscr.io/linuxserver/qemu-static 在 x86_64 硬件上构建 ARM 变体,反之亦然:

docker run --rm --privileged docker.xuanyuan.run/linuxserver/qemu-static --reset

注册后,可使用 -f Dockerfile.aarch64 指定要使用的 dockerfile。

版本历史

  • 16.08.25: - 重新基于 Alpine 3.22 构建
  • 13.08.25: - 为 syncthing v2.0.0 使用双破折号长选项
  • 03.12.24: - 重新基于 Alpine 3.21 构建
  • 06.06.24: - 重新基于 Alpine 3.20 构建
  • 05.03.24: - 重新基于 Alpine 3.19 构建
  • 05.09.23: - 重新基于 Alpine 3.18 构建
  • 01.07.23: - 弃用 armhf 架构
  • 13.02.23: - 重新基于 Alpine 3.17 构建,迁移到 s6v3
  • 17.08.22: - 基于 Alpine 3.16 构建(使用 go 1.18)
  • 03.05.22: - 重新基于 Alpine 3.15 构建
  • 05.10.21: - 重新基于 Alpine 3.14 构建
  • 12.05.21: - 再次移除 sysctl 参数
  • 03.05.21: - 提高最大 UDP 缓冲区大小
  • 03.05.21: - 添加 22000/udp 端口映射
  • 29.01.21: - 弃用 UMASK_SET,改用基础镜像中的 UMASK
  • 23.01.21: - 重新基于 Alpine 3.13 构建
  • 15.09.20: - 使用 Alpine edge 仓库中的 go 进行编译,移除重复的 UMASK 环境变量,添加主机名设置
  • 01.06.20: - 重新基于 Alpine 3.12 构建
  • 19.12.19: - 重新基于 Alpine 3.11 构建
  • 28.06.19: - 重新基于 Alpine 3.10 构建
  • 23.03.19: - 切换到新的基础镜像,迁移到 arm32v7 标签
  • 05.03.19: - 更新 v1.1.0 版本的构建过程
  • 22.02.19: - 重新基于 Alpine 3.9 构建
  • 16.01.19: - 添加流水线逻辑和多架构支持
  • 30.07.18: - 重新基于 Alpine 3.8 构建并使用构建阶段
  • 13.12.17: - 重新基于 Alpine 3.7 构建
  • 25.10.17: - 添加手动设置 umask 的环境变量
  • 29.07.17: - 简化构建结构
  • 28.05.17: - 重新基于 Alpine 3.6 构建
  • 08.02.17: - 重新基于 Alpine 3.5 构建
  • 01.11.16: - 切换到从 git 源码编译最新版本
  • 14.10.16: - 添加版本层信息
  • 30.09.16: - 修复 umask
  • 09.09.16: - 为 README 添加层徽章
  • 28.08.16: - 为 README 添加徽章
  • 11.08.16: - 重新基于 Alpine Linux 构建
  • 18.12.15: - 初始测试/发布 (IronicBadger)
  • 24.09.15: - 初始开发完成 (Lonix)