Relution Files Bridge

Die App Relution Files für iOS und Android kann auf SMB- und WebDAV Freigaben zugreifen. Die Relution Files Bridge bietet die Möglichkeit SMB bzw. DFS Freigaben als WebDAV bereit zu stellen. Die Relution Files Bridge kann bequem als Docker Container betrieben werden.


Installation

Auf dem Server, der als Relution Files Bridge genutzt werden soll, im Verzeichnis /opt/rfb eine compose.yml-Datei anlegen und folgenden Inhalt einfügen

services:
  relution-smb-bridge:
 # Aktuelle Versionsnummer auf https://hub.docker.com prüfen
    image: relution/relution-smb-bridge:1.0.1
    restart: unless-stopped
    ports:
      - '8080:8080'
    environment:
      TZ: "Europe/Berlin"

Betrieb mit https

Soll die Verbindung zudem über https hergestellt werden, lässt sich ein Reverse Proxy vor die Files Bridge stellen. Diese kann ebenfalls im gleichen compose.yaml File betrieben werden. Im Beispiel wird ein Traefik verwendet.

Die Datei müsste in diesem Fall so aussehen:

Vollständiges Konfigurationsbeispiel anzeigen
services:
relution-smb-bridge:
  image: relution/relution-smb-bridge:1.0.1
  restart: unless-stopped
  ports:
    - '8080:8080'
  expose:
    - 8080
  environment:
    - TZ=Europe/Berlin
traefik:
  restart: unless-stopped
  image: traefik:${DOCKER_TRAEFIK:-latest}
  command:
    - --providers.file.directory=/opt/traefik/
    - --entryPoints.web.address=:80
    - --entryPoints.web.http.redirections.entryPoint.to=websecure
    - --entryPoints.web.http.redirections.entryPoint.scheme=https
    - --entryPoints.websecure.address=:443
    - --certificatesresolvers.letsencrypt.acme.storage=/letsencrypt/acme.json
    - --certificatesresolvers.letsencrypt.acme.httpchallenge.entrypoint=web
  environment:
    TZ: "Europe/Berlin"
  ports:
    - '80:80'
    - '443:443'
  volumes:
    - ./certs/letsencrypt:/letsencrypt
    - ./configs/traefik:/opt/traefik
  logging:
    driver: 'json-file'
    options:
      max-size: '${DOCKER_TRAEFIK_LOGSIZE:-64m}'
      max-file: '4'
      compress: 'true'

Als Konfigurationsdatei für den Traefik die gleiche Datei wie für den Relution-Betrieb nutzen und entsprechend anpassen:

wget https://raw.githubusercontent.com/relution-io/relution-setup/master/docker/Linux/opt/relution/relution.yaml \
    --directory-prefix=/opt/rfb/configs/traefik

Zeile 4 mit der externen Adresse und Zeile 15 mit dem Namen des Containers relution-smb-bridge entsprechend anpassen.


Start und Betrieb

Die Container starten mit:

docker compose up -d

Zugriff auf die Freigabe

Hat die DFS Freigabe einen Pfad genutzt, der smb://mein-fileserver.intra/data hatte, muss in Relution Files die Konfiguration wie folgt aussehen:

  1. Name: Frei wählbar
  2. Protokoll: WebDAV
  3. Pfad: https://adresse-des-relution-files-bridge-servers/mein-fileserver.intra/data
  4. Benutzername: Domäne\Username
  5. Passwort

Die Relution Files Bridge wird dann die Anfrage, die als WebDAV Anfrage eingeht, als SMB- / DFS-Anfrage an den Server weiterleiten.

Top