Syncthing-Docker-Compose-Generator
Erstellen Sie eine compose.yaml-Datei für Syncthing. Wählen Sie Host- oder Bridge-Netzwerk, die GUI-Adresse, Benutzer und Gruppe, den Speicher sowie zusätzliche Ordner aus und erhalten Sie eine Datei mit passendem Health-Check.
Eingabe
Ausgabe
- Der Datenordner und die von Ihnen hinzugefügten Ordner müssen für den oben angegebenen Benutzer und die Gruppe beschreibbar sein.
Readme
Was ist Syncthing?
Syncthing ist ein Open-Source-Programm, das Ordner zwischen Ihren Geräten direkt und ohne zentralen Server synchron hält. Das Projekt stellt ein offizielles Image bereit, syncthing/syncthing, dessen Web-GUI auf Port 8384 lauscht und dessen Synchronisierungsprotokoll Port 22000 für TCP und QUIC verwendet. Geräte im selben Netzwerk finden einander über Broadcasts auf Port 21027.
Toolbeschreibung
Dieses Tool erstellt eine compose.yaml für Syncthing gemäß der Docker-README des Projekts. Standardmäßig wird das Host-Netzwerk verwendet, wie es in der README empfohlen wird, da Syncthing dadurch die Geräte in Ihrem lokalen Netzwerk sehen kann. In diesem Modus entfernt das Tool STGUIADDRESS, sodass die GUI auf der Adresse aus den Syncthing-Einstellungen lauscht, standardmäßig 127.0.0.1:8384. Sie können auch den Bridge-Modus auswählen. Das Tool veröffentlicht dann den GUI-Port, den Synchronisierungsport für TCP und UDP sowie den Discovery-Port und weist auf die Nachteile des Bridge-Modus hin. Sie legen den Hostnamen, den Benutzer und die Gruppe mit PUID und PGID, ein optionales UMASK und PCAP, den Datenordner sowie weitere Ordner vom Host fest. Eine Gesundheitsprüfung, die der GUI-Adresse folgt, wird hinzugefügt. Alles wird in Ihrem Browser erstellt.
Funktionen
- Host-Netzwerk wie empfohlen oder Bridge-Modus mit den veröffentlichten Ports 8384, 22000/tcp, 22000/udp und 21027/udp
- Die GUI-Listening-Adresse im Host-Modus sowie eine Warnung, wenn sie von anderen Rechnern erreicht werden kann
- Eine Bind-Adresse für den GUI-Port im Bridge-Modus, beispielsweise
127.0.0.1 PUID,PGID,UMASKundPCAPsowie ein Hostname für den Gerätenamen- Ein Datenordner auf dem Host oder ein benanntes Docker-Volume, das für Sie deklariert wird
- Weitere zu synchronisierende Ordner, die jeweils optional schreibgeschützt sein können
- Die Gesundheitsprüfung aus der README, angepasst an Port und Adresse der GUI
- Beliebige weitere Umgebungsvariablen, Kommentare zur Erklärung der Datei sowie ein Download als
compose.yaml
Beispiele
Die Standardeinstellungen ergeben das Beispiel aus der Syncthing-Docker-README:
services:
syncthing:
image: syncthing/syncthing
container_name: syncthing
hostname: syncthing
network_mode: host
environment:
PUID: "1000"
PGID: "1000"
STGUIADDRESS: ""
volumes:
- ./st-sync:/var/syncthing
healthcheck:
test: curl -fkLsS -m 2 127.0.0.1:8384/rest/noauth/health | grep -o --color=never OK || exit 1
interval: 1m
timeout: 10s
retries: 3
restart: unless-stoppedTipps
- Speichern Sie das Ergebnis als
compose.yamlund starten Sie es mitdocker compose up -d. Öffnen Sie anschließendhttp://127.0.0.1:8384 - Der standardmäßige Bridge-Modus von Docker verbirgt die lokalen Adressen Ihrer Geräte, sodass diese sich langsam oder über Relays verbinden. Verwenden Sie nach Möglichkeit den Host-Modus
- Das Image lauscht standardmäßig auf
0.0.0.0:8384. Deshalb entfernt der Host-ModusSTGUIADDRESS, und deshalb sollte der veröffentlichte GUI-Port im Bridge-Modus an127.0.0.1gebunden werden, sofern Sie nicht von anderen Rechnern darauf zugreifen möchten - Wenn die GUI von anderen Rechnern aus erreichbar ist, legen Sie in den Syncthing-Einstellungen ein GUI-Passwort fest und aktivieren Sie TLS
- Der Datenordner und die hinzugefügten Ordner müssen für
PUIDundPGIDbeschreibbar sein - Die hier hinzugefügten Ordner erscheinen in Syncthing unter dem Pfad im Container. Wählen Sie daher diesen Pfad aus, wenn Sie den Ordner in der GUI hinzufügen
- Der Synchronisierungsport bleibt 22000, da Syncthing anderen Geräten mitteilt, dass sie sich mit diesem Port verbinden sollen