☁️ Nextcloud Server (Installazione Nativa, MariaDB & Docker)

Nextcloud è installato direttamente sull'host all'interno della web root principale di Nginx (/var/www/html/), senza sottocartelle intermedie. Per ragioni di sicurezza e gestione ottimale dello spazio, la cartella dei dati degli utenti (nc_data) è stata isolata e spostata in /var/nc_data.

La gestione del database è affidata a MariaDB nativo su host, mentre la conversione video pesante e la gestione dell'app Memories sono delegate a un container Docker dedicato (Go-vod), configurato per sfruttare l'accelerazione hardware della CPU Intel del NUC.

🛠️ Guida all'Installazione

1. Installazione dei Prerequisiti (PHP 8.3 e Redis Nativo)

Accedi al terminale del NUC e installa PHP 8.3 con tutti i moduli indispensabili per Nextcloud:

sudo apt update

sudo apt install php8.3 php8.3-gd php8.3-sqlite3 php8.3-pgsql php8.3-mysql php8.3-curl php8.3-zip php8.3-xml php8.3-mbstring php8.3-intl php8.3-ldap php8.3-imagick php8.3-gmp php8.3-bcmath php8.3-fpm redis-server php8.3-redis


2. Download e Posizionamento dei File

Scarica l'ultima versione di Nextcloud e scompattala direttamente nella cartella principale di Nginx, assegnando i permessi corretti all'utente del web server (www-data):

cd /var/www/html

sudo wget https://download.nextcloud.com/server/releases/latest.zip

sudo unzip latest.zip

sudo chown -R www-data:www-data /var/www/html/


3. Creazione della Data Directory Sicura

Per motivi di sicurezza, la cartella dei dati degli utenti non si trova nella web root, ma è isolata all'esterno (/var/):

sudo mkdir -p /var/nc_data

sudo chown -R www-data:www-data /var/nc_data

sudo chmod 750 /var/nc_data


⚙️ Configurazione Nginx (Virtual Host)

Il Virtual Host di Nginx gestisce il traffico HTTPS, i blocchi di sicurezza per le cartelle sensibili, i limiti di upload elevati per i video e le regole .well-known (indispensabili per il corretto funzionamento dei client CalDAV/CardDAV e per i rinnovi automatici dei certificati SSL con Certbot).