Nextcloud mit Docker Compose und MariaDB/MySQL einrichten

Logos von Docker Compose und Nextcloud auf einem mintgrünen Hintergrund. Links oben das Docker-Logo mit der Aufschrift „Docker Compose“, darunter rechts das Nextcloud-Logo mit dem typischen Symbol aus drei verbundenen Kreisen und dem Schriftzug „Nextcloud“.

Nextcloud mit Docker Compose und MariaDB unter Linux Mint / Ubuntu installieren

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 dieser Anleitung zeige ich Schritt für Schritt, wie du unter Linux Mint oder Ubuntu eine funktionierende Umgebung mit MariaDB einrichtest.


Voraussetzungen

  • Ein System mit Linux Mint oder Ubuntu
  • Grundkenntnisse im Umgang mit der Kommandozeile
  • Docker und Docker Compose sind installiert
  • Freie Ports: 80 (für den Webzugriff) und 3306 (für die Datenbank, falls extern benötigt)

Falls Docker und Docker Compose noch nicht installiert sind, folge bitte dieser Anleitung:

Docker unter Linux Mint und Ubuntu installieren (gugeli.de)


Projektverzeichnis anlegen

mkdir -p ~/nextcloud-docker
cd ~/nextcloud-docker

Docker-Compose-Datei erstellen

Erstelle im Verzeichnis die Datei docker-compose.yml mit dem Editor Nano:

nano docker-compose.yml

Füge folgenden Inhalt ein:

version: '3.6'

services:
  db:
    image: mariadb:latest
    container_name: nextcloud_db
    restart: unless-stopped
    environment:
      MYSQL_ROOT_PASSWORD: root
      MYSQL_DATABASE: ncdb
      MYSQL_USER: nextcloud
      MYSQL_PASSWORD: nextcloud
    volumes:
      - data_db:/var/lib/mysql
    ports:
      - "3306:3306"

  nextcloud:
    image: nextcloud:latest
    container_name: nextcloud_app
    depends_on:
      - db
    restart: unless-stopped
    ports:
      - "8080:80"
    volumes:
      - ./apps:/var/www/html/apps
      - ./config:/var/www/html/config
      - ./data:/var/www/html/data
    environment:
      MYSQL_DATABASE: ncdb
      MYSQL_USER: nextcloud
      MYSQL_PASSWORD: nextcloud
      MYSQL_HOST: db

volumes:
  data_db:

Speichern und beenden: Mit Strg + O speichern, Enter bestätigen und mit Strg + X schließen.


Verzeichnisse anlegen

Lege die Ordner für Apps, Konfiguration und Daten an:

mkdir -p apps config data

Diese Verzeichnisse werden automatisch im Container eingebunden und bleiben auch bei Neustarts erhalten.


Portfreigabe prüfen

Die Konfiguration nutzt den Port 8080 für den Webzugriff. Prüfe, ob der Port frei ist:

sudo lsof -i:8080

Wenn keine Ausgabe erscheint, ist der Port frei. Falls belegt, ändere in der docker-compose.yml z. B. auf "8888:80".


Container starten

Starte die Container im Hintergrund:

docker-compose up -d

Docker lädt die Images herunter und startet die Nextcloud- und MariaDB-Container.


Status prüfen

Überprüfe, ob beide Container laufen:

docker ps

Die Ausgabe sollte ähnlich aussehen:

CONTAINER ID   IMAGE             STATUS          PORTS
abcd1234       nextcloud:latest  Up ...          0.0.0.0:8080->80/tcp
efgh5678       mariadb:latest    Up ...          3306/tcp

Ersteinrichtung von Nextcloud

Öffne anschließend im Browser:

http://localhost:8080

Beim ersten Aufruf erscheint der Einrichtungsassistent. Gib dort Folgendes ein:

  • Datenbank-Typ: MySQL/MariaDB
  • Datenbank-Name: ncdb
  • Datenbank-Benutzer: nextcloud
  • Datenbank-Passwort: nextcloud
  • Datenbank-Host: db

Nach Abschluss der Installation steht deine eigene Cloud zur Verfügung.


Daten dauerhaft speichern

  • MariaDB: Alle Daten liegen im Volume data_db und bleiben auch nach Neustarts erhalten.
  • Nextcloud: Konfiguration, Apps und Benutzerdateien werden in den lokalen Ordnern apps, config und data gespeichert.

Nützliche Befehle

# Logs anzeigen
docker-compose logs -f nextcloud

# Container neu starten
docker-compose restart

# Container stoppen (Daten bleiben erhalten)
docker-compose down

# Container und Volumes löschen (ACHTUNG: löscht Datenbank!)
docker-compose down -v

Vorteile dieser Lösung

  • Einfache Installation durch docker-compose up
  • Trennung von Anwendung, Konfiguration und Daten
  • Schnelle Backups durch Kopieren der Volume-Verzeichnisse
  • Leichtes Update durch Neustart oder Aktualisierung der Images

Mit Docker Compose kannst du unter Linux Mint oder Ubuntu in wenigen Minuten deine eigene Nextcloud-Instanz mit MariaDB aufsetzen. Durch Volumes bleiben Daten, Konfigurationen und Apps dauerhaft erhalten – ideal für private Nutzung, kleine Teams oder Tests. Passe Passwörter und Ports immer an deine Umgebung an. Alle Angaben ohne Gewähr.

Comments

No comments yet. Why don’t you start the discussion?

Schreibe einen Kommentar

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