Im folgenden werde ich Verständlich erklären, wie man eine Nextcloud auf einem Alpine Linux LXC Container unter Proxmox installiert. Ich setze als Betriebssystem auf Alpine Linux, da es im gegensatz zu debian extrem klein ist (der basis LXC Container ist nur 2,5mb groß) und trotzdem super einfach zu verwalten ist.
Als erstes muss ein Container angelegt werden, hierbei empfehle ich bei der Nextcloud 2 Kerne und 2 GB RAM. Speicher hängt von der größe der Cloud später ab. Alle Werte können nachträglich abgeändert werden, falls diese zu klein sind.
Nachdem der LXC aufgesetzt wurde können wir damit anfangen ihn upzudaten und ein paar nützliche tools zu installieren:

    apk update
    apk upgrade
    apk add nano htop openssh-server wget
    rc-update add sshd
    rc-service sshd start

Nun können wir entweder weiter auf der Konsole arbeiten oder uns via SSH verbinden.
Im nächsten Schritt können wir nun apache mit PHP installieren. Danach setzen wir den apache noch auf autostart und zu guter letzt starten wir ihn:

    apk add apache2 php8-apache2 php8-zip php8-xml php8-dom php8-xmlwriter php8-ctype php8-gd php8-iconv php8-simplexml php8-curl php8-pdo php8-mbstring php8-cli php8-session  php8-pdo_pgsql php8-xmlreader php8-openssl
    rc-update add apache2
    rc-service apache2 start

Nachdem unser Webserver nun läuft müssen wir noch den Datenbank Server installieren. Hierbei setze ich auf PostgreSQL, im Gegensatz zu MySQL läuft dieser einiges performanter, was sich später auch in der Nextcloud bemerkbar macht.

    apk add postgresql
    rc-update add postgresql
    rc-service postgresql start

Nachdem wir unseren PostgreSQL Server installiert haben, müssen wir noch eine Datenbank und einen entsprechenden Nutzer mit Passwort anlegen. Dazu müssen wir uns als erstes auf den Datenbankserver verbinden. Dazu müssen wir zuerst mit `su postgres` auf den Datenbanknutzer wechseln. Danach können wir uns mit `psql` verbinden. Wenn dies erfolgreich funktioniert hat können wir unsere Datenbank und unseren Nutzer anlegen:

    CREATE ROLE nextcloud with PASSWORD 'your-password' LOGIN;
    CREATE DATABASE nextcloud;
    GRANT ALL PRIVILEGES ON DATABASE nextcloud TO nextcloud;
    \q
    exit

Nun haben wir alle vorbereitungen getroffen und können die eigentlich Nextcloud installieren. Dazu wechseln wir in den Ordner vom Apache und laden uns das install script herunter:

    cd /var/www/localhost/htdocs
    rm index.html
    wget https://download.nextcloud.com/server/installer/setup-nextcloud.php
    chown apache /var/www/localhost/htdocs/ -R

Dieses script können wir nun über die IP unseres LXC Containers aufrufen und dort der Setup-Anleitung folgen. Beim Installationsordner können wir ein . eingeben, damit wird die Nextcloud in den aktuellen Ordner installiert. Nachdem dieser Schritt erfolgreich durchlaufen ist landen wir auf der Setup-Seite, dort müssen wir unsere Datenbank und unseren admin Nutzer wie unten im Bild zu sehen angeben. Falls gewünscht unten den Haken bei den empfohlenden Anwendungen entfernen.
Nachdem die Datenbank angelegt und alle Apps installiert wurden, solltest du auf der Startseite der Nextcloud gelandet sein. Optional kann nun für mehr performance noch ein Memory-Caching konfiguriert werden. Wie dieses eingerichtet ist, kann dem Handbuch entnommen werden.

## Kommentare: