Relution Files Bridge

Einleitung

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

Legen Sie auf dem Server im Verzeichnis /opt/rfb, der als Relution Files Bridge genutzt werden soll eine compose.yml Datei an und fügen Sie diesen Inhalt ein

services:
  relution-smb-bridge:
    image: relution/relution-smb-bridge: #1.0.1 - Bitte schauen Sie auf https://hub.docker.com nach der aktuellen Versionsnummer
    restart: unless-stopped
    ports:
      - '8080:8080'
    environment:
      TZ: "Europe/Berlin"

Betrieb mit https

Soll die Verbindung zudem über https hergestellt werden, können Sie einen 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:

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'

Nutzen Sie als Konfigurationsdatei für den Traefik die gleiche Datei wie für den Relution Betrieb und passen Sie sie entsprechend an:

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

Passen Sie die Zeile 4 mit der externen Adresse und die Zeile 15 mit dem Namen des Containers relution-smb-bridge entsprechend an.

Start und Betrieb

Starten Sie die Container 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.