faecher:informatik:pt2024:dependencies:start

Nextcloud Dependencies installieren

Nextcloud benötigt einige Softwarepakete, die auf dem Server installiert sein müssen, damit Nextcloud dort ausgeführt werden kann. Diese installieren wir jetzt.

Eine wesentliche Abhängigkeit ist die serverseitige Programmiersprache PHP sowie ein Webserver - wir verwenden apache2. PHP Pakete kommen zwar bei debian mit, aber nicht die aktuellsten, darum aktivieren wir eine weitere Softwarequelle, um das aktuelle PHP installieren zu können. Melde dich per SSH am NUC an und führe die folgenden Befehle aus:

sudo apt update 
sudo apt full-upgrade 
sudo apt install -y apt-transport-https lsb-release ca-certificates wget 
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list 
sudo apt update 
sudo apt install -y php8.3 
sudo apt install -y php8.3-mysql php8.3-zip php8.3-dom  php8.3-mbstring php8.3-gd php8.3-curl
sudo apt install apache2

Rufe an deinem Laptop jetzt in einem Browser die Adresse http://172.21.21.x deines NUC auf - das sollte ungefähr so aussehen:

Um zu testen, ob php funktioniert, kannst du eine Datei test.php im Verzeichnis /var/www/html/ anlegen

nano /var/www/html/test.php

mit dem Inhalt

<?php
phpinfo();
?>

Öffne dann die Seite http://172.21.21.x/test.php, das Ergebnis sollte ungefähr so aussehen:

Glückwunsch, du hast einen Webserver mit PHP!

Zunächst installieren wir die nötigen Software-Pakete:

sudo apt install mariadb-server

MariaDB absichern: Führe den Befehl sudo mysql_secure_installation aus uns antworte auf die Fragen wie folgt (das Passwort ist zunächst leer, bei der ersten Frage einfach Enter drücken):

Enter current password for root (enter for none): 
OK, successfully used password, moving on...

Switch to unix_socket authentication [Y/n] y

Change the root password? [Y/n] y
New password: 
Re-enter new password: 

Remove anonymous users? [Y/n] y

Disallow root login remotely? [Y/n] y

Remove test database and access to it? [Y/n] y

Reload privilege tables now? [Y/n] y

Führe den Befehl sudo mysql -u root -h localhost aus. Du gelangst zu einer mariadb-Kommandozeile:

Führe auf der mariadb Kommandozeile die folgenden Befehle aus, ersetze dabei GEHEIMESPASSWORT durch ein langes Passwort, dass du dir notierst, wir benötigen das später wieder:

create database nextcloud;
CREATE USER 'ncdbuser'@'localhost' IDENTIFIED BY 'GEHEIMESPASSWORT';
grant usage on *.* to ncdbuser@localhost identified by 'GEHEIMESPASSWORT';
GRANT ALL PRIVILEGES ON nextcloud.* TO 'ncdbuser'@'localhost'  IDENTIFIED BY 'GEHEIMESPASSWORT';
flush privileges;
exit;
  • faecher/informatik/pt2024/dependencies/start.txt
  • Zuletzt geändert: 13.07.2024 22:17
  • von sbel