Ich habe bereits schon hier eine Anleitung geschrieben, wie ihr Seafile normal „von Hand“ installieren könnt. Nun zeige ich euch, wie ihr dies in wenigen Minuten mit Docker realisiert. Traefik dient uns hier als Reverse Proxy und stellt später den Dienst verschlüsselt per TLS bereit.

Wer Traefik noch nicht installiert hat, findet hier eine Anleitung, wie ihr dies schnell tun könnt.

Als Grundlage meiner Anleitung dient die offizielle Seafile Anleitung für Docker.

1. Ordner anlegen

Zuerst legen wir uns passende Ordner-Strukturen an.

mkdir -p /opt/containers/seafile/{mysql-db,seafile-data}

2. Docker Compose anlegen

Nun legen wir die eigentliche Docker Datei an. Hierfür habe ich mir die offizielle Seafile Compose genommen und diese abgeändert für Traefik.

cd /opt/containers/seafile/
nano docker-compose.yml

Inhalt

version: '2.0'
services:
  seafile-db:
    image: mariadb:10.1
    container_name: seafile-mysql
    restart: unless-stopped
    environment:
      - MYSQL_ROOT_PASSWORD=db_dev  <--- – Hier Passwort eingeben – --->
      - MYSQL_LOG_CONSOLE=true
    volumes:
      - ./mysql-db:/var/lib/mysql
    networks:
      - seafile-net

  memcached:
    image: memcached:1.5.6
    container_name: seafile-memcached
    restart: unless-stopped
    entrypoint: memcached -m 256
    networks:
      - seafile-net

  seafile:
    image: seafileltd/seafile-mc:latest
    container_name: seafile
    restart: unless-stopped
    volumes:
      - ./seafile-data:/shared
    environment:
      - DB_HOST=seafile-db
      - DB_ROOT_PASSWD=db_dev  <--- – Hier MySQL Passwort eingeben – --->
      - TIME_ZONE=Europe/Berlin
      - SEAFILE_ADMIN_EMAIL=test@euredomain.de <--- – Hier Admin E-Mail eingeben – --->
      - SEAFILE_ADMIN_PASSWORD=test <--- – Hier Admin Passwort eingeben – --->
      - SEAFILE_SERVER_LETSENCRYPT=false   
      - SEAFILE_SERVER_HOSTNAME=cloud.euredomain.de <--- – Hier eure URL eingeben – --->

    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.seafile.entrypoints=http"
      - "traefik.http.routers.seafile.rule=Host(`cloud.euredomain.de`)"
      - "traefik.http.middlewares.seafile-https-redirect.redirectscheme.scheme=https"
      - "traefik.http.routers.seafile.middlewares=seafile-https-redirect"
      - "traefik.http.routers.seafile-secure.entrypoints=https"
      - "traefik.http.routers.seafile-secure.rule=Host(`cloud.euredomain.de`)"
      - "traefik.http.routers.seafile-secure.tls=true"
      - "traefik.http.routers.seafile-secure.tls.certresolver=http"
      - "traefik.http.routers.seafile-secure.service=seafile"
      - "traefik.http.services.seafile.loadbalancer.server.port=80"
      - "traefik.docker.network=proxy"

    depends_on:
      - seafile-db
      - memcached
    networks:
      - seafile-net
      - proxy

networks:
  seafile-net:
  proxy:
    external: true

Notwendige Anpassungen:

  1. MySQL Passwort vergeben
  2. Admin E-Mail vergeben
  3. Admin Kennwort vergeben
  4. Eure URL eingeben bei Seafile
  5. 2x eure URL eingeben bei Traefik

Diese Docker Compose Datei funktioniert nur, wenn ich euch mittels meiner Anleitung hier Traefik installiert habt. Sonst heißen einige Traefik Variablen wohl anders. Diese müsst ihr dann dementsprechend bei euch anpassen.

3. Seafile Server starten

Den Server startet ihr wie gewohnt mit folgendem Befehl:

docker-compose -f /opt/containers/seafile/docker-compose.yml up -d

Nun sollte es so aussehen, wenn ihr auf „cloud.euredomain.de“ geht.

4. Anpassungen für Uploads vornehmen

Unsere Verbindung wird mittels Traefik TLS verschlüsselt. Daher müssen wir noch Seafile anpassen. Diese Einstellungen müsst ihr mit dem Administrator Benutzer vornehmen.

Klickt auf euer „Avatar“ oben rechts.

Hier klickt ihr auf „System-Administration“.

Nun auf „Einstellungen“. Hier sind jetzt die „SERVICE_URL“ und „FILE_SERVER_ROOT“ wichtig. Diese passt ihr an.

Wichtig ist, dass wenn ihr änderungen vornehmt, dass ihr diese mit dem „Haken“ bestätigt.

Nun ändert die Einstellungen folgendermaßen ab:

  • SERVICE_URL = https://cloud.euredomain.de
  • FILE_SERVER_ROOT = https://cloud.euredomain.de/seafhttp

5. Quellen

https://download.seafile.com/published/seafile-manual/docker/deploy%20seafile%20with%20docker.md

https://github.com/haiwen/seafile-docker

Teile diesen Beitrag
Christian

Keine Kommentare vorhanden

    Schreibe einen Kommentar

    Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.