Bereiche
Bereich Docker
Allgemein
Parameter
Anwendungen
- Mattermost
- Unifi-Video
Resilio Sync (formals BitTorrent) ist eine Anwendung zur Dateisynchronisation zwischen zwei oder mehr Rechnern. Das Produkt nutzt auf einen auf dem BitTorrent-Protokoll basierende Peer-to-Peer-Ansatz. Die Synchronisation ist zwischen Rechnern im gleichen LAN und/oder über das Internet mit Rechnern an anderen Standorten erfolgen. Die Synchronisation mit Remote-Rechnern kann über Relay-Knoten erfolgen, sodass die Remote-Rechnern nicht direkt aus dem Internet erreichbar sein müssen.
Unter Linux und Windows wird Resilio Sync über eine Web-UI gesteuert, was eine Nutzung in einem Docker-Container erleichtert. Die Web-UI ist standardmäßig über Port 8888 zu erreichen.
Image | |
---|---|
Docker Hub | linuxserver/resilio-sync linuxserver migriert derzeit seine Image nach ghcr.io |
GitHub | linuxserver/docker-resilio-sync |
Architektur | x86-64, armhf, arm64 |
Software | |
Produktseite | Resilio Sync |
GitHub | – |
Als eine der möglichen Lösungen kann bei Debian-basierten Systemen das backports-Repository eingebunden werden, das eine aktuelle Version der Bibliothek enthält.
Der Container wird wie folgt mit docker run
eingerichtet und gestartet:
docker run -d \ --name=resilio-sync \ -e PUID=2000 \ -e PGID=2000 \ -e TZ=Europe/Berlin \ -e UMASK_SET=022 `#optional` \ -p 8888:8888 \ -p 55555:55555 \ -v /path/to/config:/config \ -v /path/to/downloads:/downloads \ -v /path/to/data:/sync \ --restart unless-stopped \ linuxserver/resilio-sync
Dies sind die wichtigsten Parameter. Sofern sie mit einem „*“ markiert sind, sollte eine Anpassung erfolgen:
Parameter | Funktion |
---|---|
-e PUID= * | Vorgabe des Users, mit dem die Daten auf dem Docker-Host in die gemounteten Verzeichnisse geschrieben werden. |
-e PGID= * | Vorgabe des Gruppe, mit der die Daten auf dem Docker-Host in die gemounteten Verzeichnisse geschrieben werden. |
-e TZ= * | Vorgabe der lokalen Zeitzone im Format Gebiet/Ort. |
-p | Ports: * 8888: Port der Web-UI, ggf. auf 80:8888 ändern, damit die UI über den Standard-Web-port erreichbar ist * 55555: Port für Datenaustausch |
-v * | Volumes, siehe Unterabschnitt Volumes |
In der Konfiguration werden Volumes in der Regel im folgenden Format angegeben:
<Pfad auf dem Host>:<Pfad im Container>[:<Optionen>]
Die Volumes haben die folgenden Funktionen (maßgeblich ist der Pfad im Container):
Pfad im Container | Funktion |
---|---|
/config | Ablageort der Konfiguration |
/downloads | Ablageort für einzelne Dateien, die per Share-Link geladen wurden |
/sync | Teil des Dateisystems, im den die zu synchronisierenden Ordner abgelegt sind. Hier liegen nicht nur Ordner, die vom System auf andere Knoten synchronisiert werden sollen, sondern auch Ordner, die von anderen Knoten auf das System synchronisiert werden. |
Der Container wird wie folgt in der docker-compose.yml
konfiguriert:
version: "2.1" services: resilio-sync: image: linuxserver/resilio-sync container_name: resilio-sync environment: - PUID=2000 - PGID=2000 - TZ=Europe/Berlin - UMASK_SET=022 #optional volumes: - /path/to/config:/config - /path/to/downloads:/downloads - /path/to/data:/sync ports: - 8888:8888 - 55555:55555 restart: unless-stopped
Der Container kann mit den folgenden Eintragungen in der docker-compose.yml
in Træfik integriert werden:
… resilio-sync: image: linuxserver/resilio-sync container_name: resilio-sync environment: - PUID=2000 - PGID=2000 - TZ=Europe/Berlin - UMASK_SET=022 #optional volumes: - /path/to/config:/config - /path/to/downloads:/downloads - /path/to/data:/sync ports: - 8888:8888 - 55555:55555 restart: unless-stopped labels: - traefik.http.routers.resilio.rule=Host(`resilio.example.com`) - "traefik.http.routers.resilio.tls.certResolver=default" - "traefik.http.routers.resilio.tls=true"
Der Zugang zur WebUI sollte per https gesichert werden, damit die Zugangsdaten nicht aus dem Datenstrom in Klartext abgefangen werden können. Sofern https nicht per Default aktiviert ist, kann dies durch die Ergänzung des Statements „force_https“ : true
in der Konfigurationsdatei gesteuert werden:
"webui" : { "listen" : "0.0.0.0:8888", "allow_empty_password" : false, "force_https" : true // enable https }
Sofern die Transportverschlüsselung nicht von Resilio Sync vorgenommen werden soll1), ist die entsprechende Zeile auszukommentieren bzw. zu löschen.