OpenCloud mit Euro-Office installieren

Vor einigen Monaten habe ich bereits über meinen Wechsel zu OpenCloud berichtet.
Seitdem hat sich bei dem Projekt einiges getan. Daher möchte ich heute noch einmal einen etwas detaillierteren Blick darauf werfen und in einem kurzen Tutorial zeigen, wie sich OpenCloud konfigurieren und einrichten lässt.
In diesem Zuge werde ich auch gleich das neue Euro-Office vorstellen. Dabei handelt es sich um eine europäische, quelloffene Office-Alternative zu Microsoft 365 und Google Docs.
Die Installation ist erfreulich unkompliziert und setzt lediglich einen funktionierenden Docker Host mit Docker-Compose, einen Reverse Proxy (z. B. Nginx Proxy Manager) sowie einen DNS-Server für die benötigten URLs voraus.
Konfiguration von OpenCloud
Als Erstes wird der aktuelle Code von GitHub geklont.
git clone https://github.com/opencloud-eu/opencloud-compose.git
cd opencloud-compose/
Um die Daten persistent zu speichern, werden anschließend zwei Verzeichnisse angelegt und mit den benötigten Berechtigungen versehen.
sudo mkdir -p /PFAD/ZU/DEINEM/SPEICHERORT/opencloud/{config,data}
sudo chown -R 1000:1000 /PFAD/ZU/DEINEM/SPEICHERORT/opencloud/
Die Konfiguration erfolgt über die .env-Datei. Daher kopieren wir zunächst die mitgelieferte Beispielkonfiguration und passen sie anschließend an unsere Anforderungen an.
cp .env.example .env
nano .env
In der .env-Datei habe ich anschließend folgende Werte angepasst:
INITIAL_ADMIN_PASSWORD=MEINSICHERESPASSWORT!
OC_DOMAIN=opencloud.example.com
COMPOSE_FILE=docker-compose.yml:weboffice/euro-office.yml:external-proxy/opencloud-exposed.yml:external-proxy/euro-office-exposed.yml
OC_CONFIG_DIR=/PFAD/ZU/DEINEM/SPEICHERORT/opencloud/config
OC_DATA_DIR=/PFAD/ZU/DEINEM/SPEICHERORT/opencloud/data
EURO_OFFICE_DOMAIN=office.example.com
EURO_OFFICE_JWT_SECRET=MEINSICHERESSECRET
INSECURE=false
DEFAULT_LANGUAGE=de
DEMO_USERS=false
Sobald alles erledigt ist, kann die Datei mit STRG+O gespeichert werden.
Reverse Proxy Konfigurieren
In meiner Testumgebung setze ich den Nginx Proxy Manager als Reverse Proxy ein. Daher beschreibe ich die Einrichtung anhand dieses Beispiels. Bei anderen Reverse-Proxy-Lösungen sollte die Konfiguration grundsätzlich ähnlich funktionieren.
Für OpenCloud verwende ich den Port 9200, während Euro-Office über den Port 9900 erreichbar ist.
Bei beiden Proxy-Konfigurationen aktiviere ich außerdem den WebSocket-Support und hinterlege ein SSL-Zertifikat. Die übrigen Einstellungen belasse ich bei den Standardwerten.

Nachdem die Konfiguration abgeschlossen ist, kann OpenCloud mittels Docker-Compose gestartet werden.
docker compose up -d
Anschließend sollte die Instanz bereits über die zuvor konfigurierte Proxy-URL erreichbar sein.
Für die erste Anmeldung werden der Benutzername admin sowie das zuvor festgelegte Passwort verwendet.
Es kann vorkommen, dass Anfangs Euro-Office noch nicht in der Oberfläche angezeigt wird. Dies liegt aber daran, dass Euro-Office beim Starten etwas mehr Zeit benötigt. Sobald der Container aber healthy ist, reicht es die Seite erneut zu laden und Euro-Office sollte verfügbar sein.
