So installieren Sie Nextcloud auf einem VPS

Geschrieben vom ApexVPS-Team • Zuletzt aktualisiert: Juli 2026 • 9 Min. Lesezeit

Dieser Nextcloud-VPS-Setup-Leitfaden führt Sie durch das Hosten Ihrer eigenen privaten Cloud — Dateien, Kalender, Kontakte und Fotos — auf einem Server, den Sie vollständig kontrollieren. Der Betrieb von Nextcloud auf einem VPS bietet Ihnen dedizierte Ressourcen, vollen Root-Zugriff und keine Kosten pro Benutzer, sodass Ihre Daten Ihnen gehören. Im Folgenden finden Sie die Voraussetzungen, zwei bewährte Installationspfade (Docker Compose oder ein manueller LAMP-Stack), die Einrichtung von HTTPS mit Let's Encrypt sowie die Optimierungs- und Backup-Schritte, die den Server schnell und sicher halten. Jeder Befehl zielt auf einen frischen Ubuntu- oder Debian-Server ab.

Warum Nextcloud auf einem VPS selbst hosten?

Nextcloud ist eine Open-Source-Plattform, die Google Drive, Dropbox und einen Großteil einer Produktivitätssuite durch Software ersetzt, die Sie selbst betreiben. Ein VPS ist die natürliche Heimat dafür: Im Gegensatz zu Shared Hosting erhalten Sie Root-Zugriff, feste monatliche Kosten und vorhersehbare Leistung. Auf einem wirklich dedizierten VPS gibt es keine lauten Nachbarn, die um die CPU konkurrieren, was wichtig ist, wenn mehrere Personen gleichzeitig Dateien synchronisieren. Wenn Sie abwägen, welche Dienste sich lohnen, selbst zu betreiben, vergleicht unser Überblick über die Auswahl eines VPS für Self-Hosting die häufigen Workloads und wie viel Spielraum jeder benötigt.

Voraussetzungen vor dem Start

Sie benötigen drei Dinge: einen VPS mit Ubuntu 22.04/24.04 oder Debian 12, einen Domainnamen, dessen DNS Sie bearbeiten können, und SSH-Zugriff auf den Server als Benutzer mit sudo. Eine Domain ist für Tests nicht unbedingt erforderlich, aber ohne eine können Sie kein vertrauenswürdiges TLS-Zertifikat ausstellen, also behandeln Sie sie für den echten Einsatz als Pflicht.

Die richtige VPS-Größe wählen

Die Größe hängt davon ab, wie viele Personen den Server nutzen und ob Sie Medien speichern. Für einen einzelnen Benutzer oder eine Familie, die Dokumente synchronisiert, sind 2 vCPU und 4 GB RAM komfortabel. Sobald Sie die Apps Photos, Memories oder Medien hinzufügen oder mehr als eine Handvoll aktiver Konten haben, steigen Sie auf einen Business-Class-Plan oder höher um – der zusätzliche RAM, schnellere NVMe und stündliche Snapshots machen die Erstellung von Thumbnails und Vorschauen viel flüssiger. Sie können die Stufen auf unserer VPS-Preisseite vergleichen; Skalieren ist später schnell, also ist es in Ordnung, klein anzufangen und zu wachsen.

Weisen Sie Ihre Domain auf den Server

Erstellen Sie einen A-Datensatz (und einen AAAA-Datensatz, wenn Sie IPv6 verwenden), der einen Hostnamen wie cloud.example.com auf die öffentliche IP Ihres Servers zeigt. DNS kann etwas Zeit zur Verbreitung benötigen. Bestätigen Sie, dass es aufgelöst wird, bevor Sie ein Zertifikat anfordern:

dig +short cloud.example.com

Pfad 1 – Nextcloud mit Docker Compose

Container sind der schnellste Weg zu einer sauberen, wiederholbaren Installation, und sie halten Nextcloud, seine Datenbank und den Cache vom Rest des Systems isoliert. Wenn Container neu für Sie sind, behandelt unser Anfängerleitfaden zu Docker auf einem VPS zuerst die Grundlagen. Installieren Sie Docker mit dem offiziellen Convenience-Skript und fügen Sie dann Ihren Benutzer zur Gruppe docker hinzu:

curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER
# log out and back in so the group change takes effect

Erstellen Sie einen Projektordner und eine compose.yaml, die Nextcloud mit MariaDB und Redis ausführt. Die App ist an 127.0.0.1:8080 gebunden, sodass sie nur über den später hinzugefügten Reverse-Proxy erreichbar ist, nicht direkt aus dem Internet:

mkdir ~/nextcloud && cd ~/nextcloud
nano compose.yaml
services:
  db:
    image: mariadb:10.11
    restart: always
    command: --transaction-isolation=READ-COMMITTED --log-bin=binlog --binlog-format=ROW
    volumes:
      - db:/var/lib/mysql
    environment:
      - MARIADB_ROOT_PASSWORD=change-this-root-password
      - MYSQL_PASSWORD=change-this-db-password
      - MYSQL_DATABASE=nextcloud
      - MYSQL_USER=nextcloud

  redis:
    image: redis:alpine
    restart: always

  app:
    image: nextcloud:apache
    restart: always
    ports:
      - "127.0.0.1:8080:80"
    depends_on:
      - db
      - redis
    volumes:
      - nextcloud:/var/www/html
    environment:
      - MYSQL_HOST=db
      - MYSQL_DATABASE=nextcloud
      - MYSQL_USER=nextcloud
      - MYSQL_PASSWORD=change-this-db-password
      - REDIS_HOST=redis

volumes:
  db:
  nextcloud:

Starten Sie den Stack und prüfen Sie, ob alle drei Container hochkommen:

docker compose up -d
docker compose ps

Nextcloud lauscht nun auf localhost:8080. Springen Sie zum TLS-Abschnitt, um es sicher über HTTPS bereitzustellen.

Pfad 2 – Manuelle Installation auf einem LAMP-Stack

Wenn Sie die Komponenten lieber selbst verwalten, gibt Ihnen eine klassische Linux-, Apache-, MariaDB- und PHP-Installation (LAMP) volle Kontrolle. Aktualisieren Sie das System und installieren Sie den Webserver, die Datenbank und die PHP-Erweiterungen, die Nextcloud erwartet:

sudo apt update && sudo apt upgrade -y
sudo apt install -y apache2 mariadb-server libapache2-mod-php unzip \
  php php-gd php-mysql php-curl php-mbstring php-intl php-xml \
  php-zip php-bcmath php-gmp php-imagick

Sichern Sie die Datenbank ab und erstellen Sie dann eine dedizierte Datenbank und einen Benutzer:

sudo mysql_secure_installation
sudo mysql -u root -p
CREATE DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER 'nextcloud'@'localhost' IDENTIFIED BY 'change-this-db-password';
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextcloud'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Laden Sie die neueste Version in das Web-Root-Verzeichnis und setzen Sie die Berechtigungen so, dass Apache darauf schreiben kann:

cd /var/www
sudo wget https://download.nextcloud.com/server/releases/latest.zip
sudo unzip latest.zip
sudo chown -R www-data:www-data /var/www/nextcloud

Erstellen Sie einen Apache-Virtual-Host für Ihre Domain, aktivieren Sie ihn zusammen mit den benötigten Nextcloud-Modulen und laden Sie Apache neu:

sudo a2enmod rewrite headers env dir mime
sudo a2ensite nextcloud.conf
sudo systemctl reload apache2

Sichern Sie ihn mit TLS (Let's Encrypt)

Betreiben Sie Nextcloud niemals über unverschlüsseltes HTTP — Logins und Dateien würden unverschlüsselt übertragen. Certbot vom Let's Encrypt-Projekt stellt ein kostenloses, vertrauenswürdiges Zertifikat aus und erneuert es automatisch. Für die manuelle Apache-Installation verwenden Sie das Apache-Plug-in:

sudo apt install -y certbot python3-certbot-apache
sudo certbot --apache -d cloud.example.com

Für den Docker-Pfad setzen Sie Nginx als Reverse-Proxy davor, der an 127.0.0.1:8080 weiterleitet, und lassen dann Certbot es absichern:

sudo apt install -y nginx certbot python3-certbot-nginx
sudo certbot --nginx -d cloud.example.com

Certbot installiert einen systemd-Timer, der Zertifikate vor Ablauf erneuert. Sie können die Erneuerung mit einem Probelauf bestätigen:

sudo certbot renew --dry-run

Ersteinrichtung

Öffnen Sie https://cloud.example.com in einem Browser. Erstellen Sie auf dem Einrichtungsbildschirm Ihr Administratorkonto und geben Sie bei der manuellen Installation Datenbankname, Benutzer und Passwort ein, die Sie zuvor erstellt haben (das Docker-Image ist bereits mit seiner Datenbank verbunden und überspringt diesen Schritt). Schließen Sie den Assistenten ab und Nextcloud landet in der Dateiansicht. Fügen Sie sofort Ihre Domain zur Liste der trusted_domains hinzu, wenn eine Warnung erscheint — bei Docker bedeutet das, die Konfiguration im Container zu bearbeiten:

docker compose exec -u www-data app \
  php occ config:system:set trusted_domains 1 --value=cloud.example.com

Bei der manuellen Installation wird derselbe Befehl aus dem Installationsverzeichnis mit sudo -u www-data php /var/www/nextcloud/occ ... ausgeführt. Das occ-Kommandozeilen-Tool ist ab jetzt Ihr wichtigster Verwaltungszugang.

Optimierung und Hintergrundjobs

Eine Standardinstallation funktioniert, aber ein paar Änderungen machen einen echten Unterschied. Stellen Sie Hintergrundjobs von AJAX auf System-Cron um, damit Aufgaben zuverlässig laufen, auch wenn niemand angemeldet ist. Bei der manuellen Installation fügen Sie einen Cron-Eintrag für den Web-Benutzer hinzu:

sudo crontab -u www-data -e
# add this line, then save:
*/5 * * * * php -f /var/www/nextcloud/cron.php

Setzen Sie dann die Option "Cron" unter Administration → Grundeinstellungen. Weitere lohnenswerte Anpassungen: Erhöhen Sie PHP memory_limit auf mindestens 512M, aktivieren Sie Redis für Dateisperren und Caching (bereits in der obigen Compose-Datei enthalten) und legen Sie ein Wartungsfenster fest, damit schwere Jobs nachts laufen. Die eingebauten Prüfungen helfen Ihnen, fehlende Dinge zu erkennen:

sudo -u www-data php /var/www/nextcloud/occ status
sudo -u www-data php /var/www/nextcloud/occ setupchecks

Backups, die Sie tatsächlich wiederherstellen können

Ihre VPS-Snapshots sind die erste Verteidigungslinie — tägliche Backups bei Starter Pro, stündliche Snapshots bei Business und Enterprise — aber eine gute Gewohnheit ist ein separates Backup auf Anwendungsebene, das Sie Datei für Datei wiederherstellen können. Versetzen Sie Nextcloud in den Wartungsmodus, sichern Sie die Datenbank, archivieren Sie das Datenverzeichnis und schalten Sie den Wartungsmodus dann wieder aus:

sudo -u www-data php /var/www/nextcloud/occ maintenance:mode --on
mysqldump --single-transaction -u nextcloud -p nextcloud > nextcloud-db.sql
sudo tar -czf nextcloud-data.tar.gz /var/www/nextcloud/data
sudo -u www-data php /var/www/nextcloud/occ maintenance:mode --off

Für die Docker-Installation führen Sie dieselben occ-Aufrufe über docker compose exec -u www-data app php occ ... aus und sichern Sie die benannten Volumes. Lagern Sie mindestens eine Kopie außerhalb des Servers und testen Sie gelegentlich eine Wiederherstellung — ein ungetestetes Backup ist nur eine Hoffnung.

Dauerhaft im Betrieb halten

Aktualisieren Sie Nextcloud über den integrierten Updater oder die Weboberfläche kurz nach jeder Veröffentlichung, halten Sie das Betriebssystem mit sudo apt upgrade auf dem neuesten Stand und prüfen Sie das Warnfeld "Sicherheit & Setup" im Admin-Bereich. Mit DDoS-Schutz, privatem Netzwerk und 24/7-Überwachung auf der Infrastrukturseite sowie Let's Encrypt und regelmäßigen Updates auf der Anwendungsseite ist selbst gehostetes Nextcloud eine wirklich zuverlässige Alternative zu den großen Cloud-Suiten.

Häufig gestellte Fragen

Wie viel RAM braucht ein Nextcloud-VPS-Setup?

Für einen Benutzer oder eine Familie, die Dokumente synchronisiert, sind 4 GB RAM und 2 vCPU komfortabel. Fügen Sie Foto- oder Videobibliotheken, Vorschaugenerierung oder mehrere aktive Benutzer hinzu, und ein Business-Plan mit 8 GB RAM und schnellerem NVMe ist besser geeignet. Enterprise bietet 16 GB und NVMe-RAID für größere Teams.

Sollte ich die Docker- oder die manuelle LAMP-Installation wählen?

Wählen Sie Docker Compose, wenn Sie einen sauberen, wiederholbaren Stack möchten, der einfach zu verschieben oder neu aufzubauen ist, und den manuellen LAMP-Pfad, wenn Sie Apache, PHP und MariaDB direkt verwalten möchten. Beide werden auf einem VPS mit Root-Zugriff vollständig unterstützt; das Endergebnis ist dieselbe Nextcloud.

Ist selbst gehostetes Nextcloud sicher?

Ja, bei korrekter Konfiguration: Stellen Sie alles über HTTPS mit einem Let's Encrypt-Zertifikat bereit, halten Sie das Betriebssystem und Nextcloud aktuell, verwenden Sie starke Passwörter mit Zwei-Faktor-Authentifizierung und verlassen Sie sich auf Ihre VPS-Backups. Da Sie es selbst hosten, hat kein Dritter dauerhaften Zugriff auf Ihre Dateien.

Brauche ich eine Domain?

Effektiv ja. Sie können eine rohe IP-Adresse testen, aber ein vertrauenswürdiges TLS-Zertifikat erfordert eine Domain, und mobile und Desktop-Sync-Clients erwarten einen ordnungsgemäßen HTTPS-Hostnamen. Eine einzige kostengünstige Domain mit einem A-Record, der auf Ihren Server zeigt, genügt.

Kann ich ohne Kreditkarte bezahlen?

Ja. Der ApexVPS-Checkout ist rein auf Krypto-basiert über OxaPay und akzeptiert Bitcoin, Ethereum, USDT und 30+ Coins – keine Kreditkarte oder Bankkonto. Für die Anmeldung wird nur eine E-Mail benötigt, um Ihre Zugangsdaten zu senden, plus optionale Notizen wie einen SSH-Key oder bevorzugtes OS. Kein Name, keine Adresse, kein KYC erforderlich.

Bereit, Ihre eigene Cloud zu hosten? VPS-Pläne für Self-Hosting ansehen →