Zum Hauptinhalt springen

Docker Compose-Installation

Installation von Sync-in mit Docker Compose.

Sync-in wird als offizielles Docker-Image verteilt, verfügbar auf Docker Hub: https://hub.docker.com/r/syncin/server

Dieses Image ist speziell für die Bereitstellung und Ausführung in einer Docker Compose-Umgebung konzipiert.


📋 Voraussetzungen​

⚙️ Mindesthardwareanforderungen​

  • RAM: 1 GB
  • CPU: 1 Kern/vCPU
  • Speicherplatz: 2 GB

🐳 Docker Compose​

Diese Konfiguration basiert auf Docker Compose-Dateien mit der Erweiterung x-include. Sie benötigen:

  • Docker Engine Version 24 oder höher
  • Docker Compose Version 2.20 oder höher

✅ Sie können die installierten Versionen überprüfen mit:

docker --version
docker compose version

🔗 Wenn Docker nicht installiert ist, befolgen Sie die offizielle Docker-Installationsanleitung.

📦 Konfigurationsdateien​

Um die Sync-in-Docker-Compose-Dateien (sync-in-docker) von https://github.com/Sync-in/server/releases abzurufen, verwenden Sie eine der folgenden Methoden:

  • curl und unzip:
    curl -L -o sync-in-docker.zip \
    https://github.com/Sync-in/server/releases/latest/download/sync-in-docker.zip && \
    unzip sync-in-docker.zip
  • oder mit curl und tar:
    curl -L -o sync-in-docker.tar.gz \
    https://github.com/Sync-in/server/releases/latest/download/sync-in-docker.tar.gz && \
    tar zxvf sync-in-docker.tar.gz

Sie sollten die folgende Struktur im Verzeichnis sync-in-docker erhalten:

├── config
│ ├── collabora
│ │ └── docker-compose.collabora.yaml
│ ├── drawio
│ │ └── docker-compose.drawio.yaml
│ ├── nginx
│ │ ├── collabora.conf
│ │ ├── docker-compose.nginx.yaml
│ │ ├── drawio.conf
│ │ ├── nginx.conf
│ │ ├── onlyoffice.conf
│ │ └── eurooffice.conf
│ ├── onlyoffice
│ │ └── docker-compose.onlyoffice.yaml
│ ├── eurooffice
│ │ └── docker-compose.eurooffice.yaml
│ └── sync-in-desktop-releases
│ ├── docker-compose.sync-in-desktop-releases.yaml
│ └── update.sh
├── docker-compose.yaml
└── environment.yaml

Sie können die Struktur und den Inhalt im GitHub-Repository überprüfen.


🚀 Schnellstart​

1. Konfigurieren Sie die erforderlichen Geheimnisse​

Navigieren Sie zum Docker Compose-Verzeichnis:

cd sync-in-docker

Definieren Sie vor dem Starten des Servers die erforderlichen Geheimnisse für Zugriffstoken und Aktualisierungstoken und konfigurieren Sie einen dedizierten Verschlüsselungsschlüssel.

Bearbeiten Sie die Datei environment.yaml:

server:
# Derzeit optional; in der nächsten Hauptversion erforderlich
publicUrl: 'https://sync-in.domain.com'
mysql:
# Das in docker-compose.yaml festgelegte Root-Passwort verwenden
url: 'mysql://root:MySQLRootPassword@mariadb:3306/sync_in'
auth:
encryptionKey: 'REPLACE_WITH_LONG_RANDOM_ENCRYPTION_KEY'
token:
access:
secret: 'REPLACE_WITH_LONG_RANDOM_ACCESS_SECRET'
refresh:
secret: 'REPLACE_WITH_LONG_RANDOM_REFRESH_SECRET'
Öffentliche URL

publicUrl muss mit der für Benutzer sichtbaren Adresse übereinstimmen, einschließlich des Schemas und aller nicht standardmäßigen Ports. Die Angabe bleibt bis zur nächsten Hauptversion optional. Die URL muss sowohl über die Browser der Benutzer als auch über die Container der Office-Editoren erreichbar sein, die mit Sync-in kommunizieren. Wenn publicUrl fehlt, verwenden die Editoren aus Kompatibilitätsgründen den Ursprung der Anfrage. Aus Sicherheitsgründen wird diese Option in der nächsten Hauptversion Pflicht, damit Editor-Endpunkte aus einem vertrauenswürdigen, vom Administrator kontrollierten Ursprung und nicht aus Anfrage-Headern erstellt werden.

Bearbeiten Sie dann die Datei docker-compose.yaml, um sicherzustellen, dass das MySQL-Passwort übereinstimmt:

services:
mariadb:
environment:
MYSQL_ROOT_PASSWORD: 'MySQLRootPassword'
Sicherheit

Verwenden Sie lange, zufällig generierte Zeichenfolgen für Ihre Geheimnisse, um maximale Sicherheit zu gewährleisten.

Info

Verwenden Sie in YAML-Dateien einfache Anführungszeichen für Passwörter, die Sonderzeichen enthalten.

Tipp

Sie können Umgebungsvariablen verwenden, um die zuvor definierten Geheimnisse zu konfigurieren. Weitere Einzelheiten finden Sie im Abschnitt Umgebungsvariablen.

2. Datenspeicher konfigurieren​

Daten von Sync-in und MariaDB werden bereits in benannten Docker-Volumes gespeichert. Für eine Testinstallation sind keine Änderungen erforderlich. In der Produktion können Sie Hostverzeichnisse bereitstellen, um direkt zu steuern, wo die Daten gespeichert werden und wie sie gesichert werden. Die folgenden Beispiele zeigen, wie jedes Volume durch ein Hostverzeichnis ersetzt wird.

Sync-in​

Das Volume data, gemountet unter /app/data, speichert die von Sync-in verwalteten Dateien.

services:
sync_in:
volumes:
# Standard-Docker-Volume
# - data:/app/data

# Hostverzeichnis
- '/home/sync-in-data:/app/data'
Fester Containerdatenpfad

Der Docker-Einstiegspunkt setzt applications.files.dataPath immer auf /app/data. Fügen Sie dataPath nicht zu environment.yaml hinzu und versuchen Sie nicht, es mit SYNCIN_APPLICATIONS_FILES_DATAPATH zu überschreiben: Jeder dem Container bereitgestellte Wert wird ersetzt. Um festzulegen, wo die Daten gespeichert werden, konfigurieren Sie ausschließlich die Quelle des unter /app/data eingehängten Volumes.

MariaDB​

Das Volume mariadb_data, gemountet unter /var/lib/mysql, speichert die MariaDB-Datenbankdaten.

services:
mariadb:
volumes:
# Standard-Docker-Volume
# - mariadb_data:/var/lib/mysql

# Hostverzeichnis
- '/home/sync-in-mariadb:/var/lib/mysql'

3. Starten Sie den Sync-in-Server​

Um Ihre eigenen Administrator-Anmeldeinformationen beim ersten Start festzulegen, verwenden Sie:

INIT_ADMIN=true INIT_ADMIN_LOGIN='user' INIT_ADMIN_PASSWORD='password' docker compose up -d

Ersetzen Sie user und password durch Ihre gewünschten Anmeldeinformationen.

Beispiele für Compose-Dateien und Einzelheiten zur Handhabung von Anführungszeichen finden Sie unter Variablen und Geheimnisse.

Wenn Sie diese Variablen nicht festlegen und einfach Folgendes ausführen:

INIT_ADMIN=true docker compose up -d

Der Server verwendet die Standard-Administrator-Anmeldeinformationen:

  • Login: sync-in
  • Passwort: sync-in
Warnung

Wichtig: Aus Sicherheitsgründen wird dringend empfohlen, diese Anmeldeinformationen bei Ihrer ersten Anmeldung zu ändern.

Info

Um den Status von Containern zu überprüfen: docker compose ps

4. Greifen Sie auf die Weboberfläche zu​

Sobald der Server gestartet ist, öffnen Sie Ihren Browser unter der folgenden Adresse:

http://localhost:8080

Melden Sie sich mit den in Schritt 3 definierten Administratoranmeldeinformationen an.

Informationen zum Bereitstellen von Sync-in über den gebündelten Nginx-Dienst auf Standard-HTTP/HTTPS-Ports finden Sie in der Konfiguration Docker Reverse Proxy.