Nextcloud ist eine beliebte Open-Source-Alternative zu Dropbox oder Google Drive. Mit Docker Compose lässt sich in wenigen Minuten eine vollständige Nextcloud-Instanz inklusive Datenbank starten. In diesem Artikel zeige ich dir, wie du mit einer docker-compose.yml
Nextcloud und MariaDB verbindest.
Voraussetzungen
- Installiertes Docker und Docker Compose
- Grundkenntnisse in der Kommandozeile
- Freie Ports 80 (für den Webzugriff) und 3306 (für die Datenbank, falls extern benötigt)
Docker-Compose-Konfiguration
Die folgende Konfiguration erstellt zwei Services: nextcloud und db (MariaDB). Dabei werden persistente Volumes für Apps, Konfigurationen und Daten eingerichtet:
version: '2'
services:
nextcloud:
container_name: nextcloud
restart: unless-stopped
image: nextcloud
ports:
- 80:80
volumes:
- /home/tobias/Öffentlich/nextcloud/apps:/var/www/html/apps
- /home/tobias/Öffentlich/nextcloud/config:/var/www/html/config
- /home/tobias/Öffentlich/nextcloud/data:/var/www/html/data
depends_on:
- db
db:
container_name: maria-db
restart: unless-stopped
image: mariadb
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: ncdb
MYSQL_USER: nextcloud
MYSQL_PASSWORD: nextcloud
volumes:
- /home/tobias/Öffentlich/mariadb/mariadb:/var/lib/mysql
Erklärung der Konfiguration
- nextcloud: nutzt das
nextcloud
-Image, läuft auf Port 80 und bindet lokale Ordner für Apps, Konfiguration und Nutzerdaten ein. - db (MariaDB): verwendet das
mariadb
-Image, definiert Standard-Umgebungsvariablen für Datenbankname, Benutzer und Passwort und speichert die Daten im lokalen Verzeichnis/home/tobias/Öffentlich/mariadb/mariadb
.
Start der Container
Speichere die Datei als docker-compose.yml
und starte die Container mit:
docker-compose up -d
Überprüfen, ob alles läuft:
docker ps
Ersteinrichtung von Nextcloud
Rufe anschließend im Browser http://localhost
auf. Beim Setup wählst du:
- Speicher & Datenbank → MySQL/MariaDB
- Datenbank-Name: ncdb
- Datenbank-Benutzer: nextcloud
- Datenbank-Passwort: nextcloud
- Datenbank-Host:
maria-db
(Name des DB-Containers)
Nach Abschluss der Installation steht dir deine persönliche Cloud sofort zur Verfügung.
Daten dauerhaft speichern
- MariaDB: Alle Daten liegen im Host-Verzeichnis
/home/tobias/Öffentlich/mariadb/mariadb
. - Nextcloud: Konfiguration, Apps und Benutzerdaten bleiben persistent, da sie in dedizierte Host-Ordner ausgelagert sind.
Vorteile dieser Lösung
- Einfache Installation durch
docker-compose up
- Trennung von Daten, Konfiguration und Anwendungen
- Schnelles Backup durch Kopieren der Volume-Verzeichnisse
- Leichtes Update: Container neu starten oder Images aktualisieren, ohne Datenverlust
Fazit
Mit Docker Compose kannst du in wenigen Minuten deine eigene Nextcloud-Instanz mit MariaDB einrichten. Durch die Nutzung von Volumes bleiben deine Daten, Konfigurationen und Apps dauerhaft erhalten. Perfekt für den privaten Gebrauch, kleine Teams oder Testumgebungen. Natürlich gilt es, die Passwörter und lokalen Verzeichnisse anzupassen. Alle Angaben ohne Gewähr.