Self-Hosted / Projects / Syncthing

Syncthing
StableSpecs verified October 4, 2026 · against v2.1.3
Overview
Private peer-to-peer file synchronization across computers, servers, and NAS devices.
Syncthing is an open source, peer-to-peer file synchronization tool that replicates files directly between your computers, servers, and NAS devices instead of storing them in a central cloud account.
The useful search intent is usually “self-hosted Dropbox alternative” or “private file sync,” but Syncthing is not a hosted drive with a web document editor. It is a sync layer: you choose the devices, folders, trust relationships, and storage locations, then operate the network yourself.
Why people choose Syncthing
The official project positions Syncthing around data ownership: files stay on the devices you choose, communication is protected with TLS, and each device is authenticated with a cryptographic certificate. That makes it a strong fit for syncing working folders, backups, and private data across a homelab without handing the files to a SaaS provider.
It also avoids the need for a permanent central server for many workflows. Devices exchange data when they are online, and the browser-based GUI can be used to configure and monitor folders on desktops, servers, and NAS systems.
What you get in the stack
Syncthing supports multiple shared folders and devices, device approval, folder permissions, ignore patterns, file versioning, discovery, relays, and a documented open protocol. The official documentation also covers a REST API, Prometheus-style metrics, reverse proxies, untrusted encrypted devices, and running the service automatically with systemd or other process managers.
Docker is supported through the project documentation, but it does not change the basic operating model: configuration, database/index state, and synced folders need persistent storage, and every participating device still needs a deliberate trust and network design.
What to know before you deploy
Syncthing is synchronization, not a complete backup strategy. Deletions and unwanted changes can propagate, so use folder versioning, snapshots, or a separate backup system when the data matters. An untrusted device can receive encrypted data without seeing the plaintext, but it still requires careful configuration.
Performance depends on hashing, encryption, compression, disk speed, CPU, and network paths. The official FAQ notes that large folders can create CPU and scanning work, while relay connections can be slower than direct connections. The GUI should also be protected with authentication and a network boundary rather than exposed casually to the public internet.
Official support for iOS is not provided by the current Syncthing team because of background-processing restrictions. Community and commercial mobile clients exist, but they should not be described as the same thing as an official first-party iOS app.
Best fit
Choose Syncthing when you want private, direct file replication between devices and are comfortable owning folder permissions, versioning, backups, and network access.
Choose Nextcloud, Seafile, or another cloud-style platform when the main requirement is a central web drive with browser collaboration, sharing links, and server-side file management rather than device-to-device synchronization.
Quick deploy
Paste into docker-compose.yml and rundocker compose up -d1services:2 syncthing:3 image: syncthing/syncthing:2.1.34 container_name: syncthing5 hostname: my-syncthing6 environment:7 - PUID=10008 - PGID=10009 - STGUIADDRESS=10 volumes:11 - /path/to/st-sync:/var/syncthing12 network_mode: host13 restart: unless-stopped
Configuration
Environment variables
| Variable | What it does | Example |
|---|---|---|
PUID | UID Syncthing runs as inside the official container. | 1000 |
PGID | GID Syncthing runs as inside the official container. | 1000 |
STGUIADDRESS | Optional GUI bind address override in the official container. | 127.0.0.1:8384 |
UMASK | Optional umask for files created by Syncthing. | 002 |
PCAP | Optional extra Linux capabilities without running as root. | cap_chown,cap_fowner+ep |
Ports
8384/tcp— Syncthing admin GUI and REST API22000/tcp— Primary sync listener for device connections22000/udp— QUIC sync listener for device connections
Volumes to back up
/var/syncthing— Official container volume for synchronized files and Syncthing state.
Interface previews
Screenshots of the Syncthing interface.
Feature support
| Feature | Support |
|---|---|
| Peer-to-peer continuous file synchronizationThe official site and FAQ describe real-time synchronization between two or more computers without a central cloud store. | Supported |
| TLS-encrypted device communicationThe official site states that communication is secured with TLS and perfect forward secrecy. | Supported |
| Device identity and approvalDevices use cryptographic identities and must be explicitly allowed to connect. | Supported |
| Browser-based configuration GUIThe project provides a responsive browser interface for configuring and monitoring Syncthing. | Supported |
| Folder ignore patterns and permissionsOfficial documentation covers ignore patterns, folder types, and folder permissions. | Supported |
| File versioningVersioning is documented as a way to retain older file states, but it is not a substitute for independent backups. | Supported |
| Discovery and relay supportGlobal discovery, local discovery, and relay paths are documented for devices that cannot connect directly. | Supported |
| Untrusted encrypted devicesThe official docs describe encrypted folders for devices that should store data without receiving plaintext. | Supported |
| Docker deploymentThe official repository links to Docker documentation; persistent configuration and data paths remain the operator’s responsibility. | Supported |
| Official first-party iOS clientThe official FAQ says the current team has no foreseeable plan to support iOS; third-party clients have limitations and separate support models. | Not supported |
Community signals
- Stars
- 89.3k
- Forks
- 5.5k
- Open issues
- 388
- Last commit
- 2d ago
- Latest release
- v2.1.6
- Repo created
- Nov 2013
Includes open pull requests
6d ago
Refreshed nightly from the GitHub API.
Alternatives
- Nextcloud
Broader self-hosted cloud platform with web file management and collaboration.
- Seafile
Centralized self-hosted file sync and sharing comparison.
- Resilio Sync
Proprietary peer-to-peer synchronization comparison.
Questions
What is Syncthing used for?
Syncthing is used to synchronize files privately between computers, servers, NAS devices, and other trusted endpoints without uploading the files to a central cloud service.
Is Syncthing a self-hosted Dropbox alternative?
It can replace the file-sync part of Dropbox for many users, but it is not a hosted web drive. Syncthing focuses on device-to-device replication, while Dropbox-style web collaboration and central sharing may require another platform.
Does Syncthing need a central server?
Not always. Devices can exchange files directly when they are online, using discovery and relays when needed. A server or NAS can still be useful as one of the synchronized devices or as a stable always-on endpoint.
Is Syncthing a backup tool?
No. Synchronization can replicate deletions and unwanted changes. Use file versioning, filesystem snapshots, or an independent backup system for recovery.
Can Syncthing run in Docker?
Yes. The official project documents Docker support. Persist the configuration, index data, and folders being synchronized, and protect the GUI with authentication and a trusted network boundary.
Does Syncthing work on iPhone?
There is no official first-party iOS client from the current Syncthing team. Community and commercial clients exist, but iOS background-processing restrictions mean their behavior and support differ from the official desktop and server builds.
Why is Syncthing sync slow or using CPU?
The official FAQ points to hashing, encryption, compression, filesystem scanning, low-powered devices, network quality, and relay connections as common causes. Large folders and first-time indexing can be more CPU-intensive than steady-state synchronization.
support // the lab
Found this write-up useful?
If it saved you time or a rebuild, you can support more practical homelab guides.