Nextcloud Quick Install
Installation auf einem Ubuntu 22.04 LTS
Modul |
Bedeutung und Funktion |
---|---|
|
Der Apache HTTP Server, einer der am häufigsten verwendeten Webserver. |
|
MariaDB, eine relationale Datenbank, die eine Abspaltung von MySQL ist. |
|
Eine Toolkit-Implementierung des Secure Sockets Layer (SSL) und Transport Layer Security (TLS) Protokolls. |
|
PHP, eine Skriptsprache, die hauptsächlich für die serverseitige Webentwicklung verwendet wird. |
|
Ein Befehlszeilenprogramm zum Herunterladen von Dateien aus dem Internet. |
|
Ein Befehlszeilen-Tool für die Datenübertragung mit URL-Syntax. |
|
Werkzeuge zum Komprimieren und Dekomprimieren von Dateien und Verzeichnissen. |
|
PHP-Erweiterung für die MySQL-Datenbankanbindung. |
|
PHP-Erweiterung für die Arbeit mit ZIP-Archiven. |
|
Apache-Modul für die Integration von PHP in den Webserver. |
|
PHP-Erweiterung für die Verarbeitung von XML-Dokumenten. |
|
PHP-Erweiterung für Multibyte-String-Manipulationen. |
|
PHP-Erweiterung für die dynamische Erzeugung von Bildern. |
|
PHP-Erweiterung für die Unterstützung von cURL, einem Werkzeug für die Datenübertragung mit URLs. |
|
PHP-Erweiterung für den Alternativen PHP Cache - User Cache, ein Cache-System für PHP-Anwendungen. |
|
PHP-Erweiterung für Internationalisierung und Lokalisierung. |
|
PHP-Erweiterung für präzise mathematische Berechnungen mit beliebiger Genauigkeit. |
|
PHP-Erweiterung für GNU Multiple Precision, für mathematische Operationen. |
|
PHP-Erweiterung für die Manipulation von Bildern mit der ImageMagick-Bibliothek. |
|
Zusätzliche Bibliotheken für ImageMagick, die für die Bildmanipulation benötigt werden. |
Konfigurationsoption |
Bedeutung |
---|---|
|
Deaktiviert den Ausgabe-Puffer. |
|
Legt das maximale Limit für den Speicherverbrauch eines einzelnen PHP-Skripts auf 2048 Megabyte fest. |
|
Definiert die maximale Größe von hochgeladenen Dateien auf 20 Gigabyte. |
|
Legt das maximale Limit für die Größe aller POST-Daten in einem HTTP-POST-Request auf 20 Gigabyte fest. |
|
Reserviert 16 Megabyte Speicher im OPcache für internierte Zeichenketten, was die Leistung in Bezug auf Zeichenkettenoptimierung unterstützt. |
|
Aktiviert die Erweiterung „apcu.so“ (Alternative PHP Cache - User Cache), die einen benutzerdefinierten Cache für PHP-Anwendungen bereitstellt. |
|
Aktiviert den APC-Cache auch für PHP-CLI (Command Line Interface) Anwendungen. |
Vorbereitung des Webservers
Benötigte Pakete
root@nextcloud:~# apt update && apt upgrade -y
apt install -y apache2 mariadb-server openssl php wget curl zip unzip php-mysql php-zip libapache2-mod-php php-xml php-mbstring php-gd php-curl php-apcu php-intl php-bcmath php-gmp php-imagick libmagickcore-6.q16-6-extra
MariaDB - Datenbank
mysql_secure_installation
Enter current password for root (enter for none):
Switch to unix_socket authentication [Y/n] n
Change the root password? [Y/n] Y
New password:SQL#Root
Re-enter new password:SQL#Root
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
Nextcloud DB Einrichten
root@nextcloud:~# mysql
create database nextcloud;
create user 'nc_user'@'localhost' identified by 'nc_pass';
grant all privileges on nextcloud.* to 'nc_user'@'localhost' identified by 'nc_pass';
flush privileges;
exit;
Testen
root@nextcloud:~# mysql -u nc_user -p
show databases;
exit;
Webserver Anpassen
Apache2 Anpassen
root@nextcloud:~# vi /etc/apache2/sites-enabled/000-default.conf
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/nextcloud
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory "/var/www/nextcloud">
Require all granted
AllowOverride All
Options FollowSymLinks MultiViews
</Directory>
</VirtualHost>
PHP Anpassungen
root@nextcloud:~# vi /etc/php/8.1/apache2/php.ini
output_buffering = Off
memory_limit = 2048M
upload_max_filesize = 20G
post_max_size = 20G
opcache.interned_strings_buffer=16
vi /etc/php/8.1/mods-available/apcu.ini
extension=apcu.so
apc.enable_cli=1
Aktivieren der Änderungen
a2enmod rewrite
root@nextcloud:~# systemctl restart apache2
root@nextcloud:~# mkdir /var/www/nextcloud
root@nextcloud:~# cd /var/www/nextcloud/
root@nextcloud:/var/www/nextcloud# wget https://download.nextcloud.com/server/installer/setup-nextcloud.php
root@nextcloud:/var/www/nextcloud# cd ..
root@nextcloud:/var/www# chown -R www-data:www-data nextcloud/
root@nextcloud:~# vi /var/www/nextcloud/config/config.php
IP-Adresse im Webbroser aufrufen, es sollte die Initiale Installations Seite der Nextcloud zu sehen sein.
!BILD-Admin!