Skip to content
Snippets Groups Projects
nextcloud.html 4.71 KiB
Newer Older
  • Learn to ignore specific revisions
  • <!DOCTYPE html>
    <html lang="de">
    
    <head>
        <meta charset="UTF-8">
        <meta content="width=device-width, initial-scale=1.0" name="viewport">
        <title></title>
        <link href="/css/style.css" rel="stylesheet">
    </head>
    
    <body>
        <jl-header data-title="Nextcloud auf Proxmox"></jl-header>
        <div id="content">
            <p>
                Im folgenden werde ich Verständlich erklären, wie man eine <a href="//nextcloud.com/">Nextcloud</a> auf
                einem <a href="//alpinelinux.org/">Alpine Linux</a> 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.<br>
                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.<br>
                Nachdem der LXC aufgesetzt wurde können wir damit anfangen ihn upzudaten und ein paar nützliche tools zu
                installieren:
            <pre>
    <code class="language-bash">apk update
    apk upgrade
    apk add nano htop openssh-server wget
    rc-update add sshd
    rc-service sshd start</code>
    </pre>
            Nun können wir entweder weiter auf der Konsole arbeiten oder uns via SSH verbinden.<br>
            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:
            <pre>
    <code class="language-bash">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-psql php8-pdo_pgsql php8-xmlreader php8-openssl
    rc-update add apache2
    rc-service apache2 start</code>
    </pre>
            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.
            <pre>
    <code class="language-bash">apk add postgresql
    rc-update add postgresql
    rc-service postgresql start</code>
    </pre>
            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 <code class="language-bash">su postgres</code> auf den Datenbanknutzer wechseln. Danach können wir
            uns
            mit <code class="language-bash">psql</code> verbinden. Wenn dies erfolgreich funktioniert hat können wir unsere
            Datenbank und unseren Nutzer anlegen:
            <pre>
    <code class="language-sql">CREATE ROLE nextcloud with PASSWORD 'your-password' LOGIN;
    CREATE DATABASE nextcloud;
    GRANT ALL PRIVILEGES ON DATABASE nextcloud TO nextcloud;
    \q
    exit</code>
    </pre>
            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:
            <pre>
    <code class="language-bash">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</code>
    </pre>
            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.<br>
            <img src="/API/getFile.php?filename=img/nextcloud-setup.png"><br>
            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 <a
                href=https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/caching_configuration.html">Handbuch</a>
            entnommen werden.
            </p>
            <h2>Kommentare:</h2>
            <jl-comments_display></jl-comments_display>
            <jl-new_comment id="newComment"></jl-new_comment>
        </div>
        <jl-footer></jl-footer>
    
        <script async defer src='https://www.hCaptcha.com/1/api.js'></script>
        <script src="/js/script.js"></script>