diff --git a/public/API/mainMenu.json b/public/API/mainMenu.json index 192821ff57ce3edac3293d6c6a80802b40affa4e..6b6081cc475d79233f68d57ee37eb4ddee63c516 100644 --- a/public/API/mainMenu.json +++ b/public/API/mainMenu.json @@ -78,10 +78,22 @@ "name": "Smart Mirror", "url": "/Projekte/smartmirror.html", "type": "link" - }, + } + ] + }, + { + "name": "Anleitungen", + "url": "#", + "type":"dropdown", + "childElements": [ { "name": "Installation von Snowboy", - "url": "/Projekte/snowboy.html", + "url": "/Anleitungen/snowboy.html", + "type": "link" + }, + { + "name": "Nextcloud auf Proxmox", + "url": "/Anleitungen/nextcloud.html", "type": "link" } ] diff --git a/public/Anleitungen/nextcloud.html b/public/Anleitungen/nextcloud.html new file mode 100644 index 0000000000000000000000000000000000000000..742ce89809bf42dfccc2a9b06169c279e9d674ff --- /dev/null +++ b/public/Anleitungen/nextcloud.html @@ -0,0 +1,87 @@ +<!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> \ No newline at end of file diff --git a/public/Projekte/snowboy.html b/public/Anleitungen/snowboy.html similarity index 100% rename from public/Projekte/snowboy.html rename to public/Anleitungen/snowboy.html