1.0.3 - php cli install

This commit is contained in:
2026-06-03 10:20:49 +02:00
parent 8404cda475
commit 7381d86362
4 changed files with 679 additions and 551 deletions
+9 -57
View File
@@ -268,7 +268,7 @@
<h2 id="installazione">5. Guida all'Installazione</h2>
<h3>Panoramica</h3>
<p>L'installazione avviene tramite comandi <strong>Artisan</strong> da terminale. Non esiste un wizard web interattivo. Supporta due modalità:</p>
<p>L'installazione avviene tramite l'interattivo <code>install.php</code> che guida passo-passo. Supporta due modalità:</p>
<table>
<thead><tr><th>Modalità</th><th>Descrizione</th></tr></thead>
@@ -313,16 +313,15 @@ git clone &lt;URL_REPOSITORY&gt; glastree
# Opzione B — ZIP (se non hai git)
# unzip /percorso/del/glastree.zip -d glastree
cd glastree
composer install --no-dev --optimize-autoloader
npm ci && npm run build</pre>
<p>Se non hai accesso a npm, puoi saltare il build. L'interfaccia userà comunque AdminLTE via CDN.</p>
cd glastree</pre>
<h4>Passo 3: Permessi cartelle</h4>
<pre>sudo chown -R www-data:www-data storage bootstrap/cache
sudo chmod -R 775 storage bootstrap/cache</pre>
<h4>Passo 3: Eseguire l'installer</h4>
<p>Lancia l'installer interattivo che guida attraverso tutte le fasi:</p>
<pre>php install.php</pre>
<p>L'installer chiede: modalità (Fresh Install Apache/Docker o Restore), nome sito, dati amministratore, URL pubblico, database (MySQL o SQLite).<br>
Esegue automaticamente: <code>.env</code> + <code>APP_KEY</code>, composer, migration/seed, admin user, asset (se npm presente), permessi.</p>
<h4>Passo 4: Configurare Apache</h4>
<h4>Passo 4: Configurare Apache (solo Fresh Install)</h4>
<pre>sudo tee /etc/apache2/sites-available/glastree.conf &lt;&lt;APACHE
&lt;VirtualHost *:80&gt;
ServerName glastree.esempio.it
@@ -343,28 +342,7 @@ sudo a2dissite 000-default.conf
sudo a2ensite glastree.conf
sudo systemctl reload apache2</pre>
<h4>Passo 5: Configurare l'ambiente</h4>
<pre># Copia il file di configurazione di esempio
cp .env.example .env
# Genera la chiave di crittografia (obbligatorio)
php artisan key:generate
# Modifica .env con i parametri del tuo database:
# nano .env
# DB_DATABASE=glastree
# DB_USERNAME=glastree
# DB_PASSWORD=la_tua_password</pre>
<h4>Passo 6: Eseguire l'installazione</h4>
<p><strong>Fresh Install:</strong></p>
<pre># Esegui migration e seed dei dati di base
php artisan migrate --seed
# Crea il collegamento storage
php artisan storage:link
# Crea l'utente amministratore
<p>Configura SSL con Let's Encrypt dopo l'installazione.</p>
php artisan tinker --execute="
\$u = new \App\Models\User;
\$u->name = 'Admin';
@@ -386,32 +364,6 @@ php artisan key:generate
# Crea il collegamento storage
php artisan storage:link</pre>
<h3>Modalità Fresh Install</h3>
<p>Seleziona questa modalità quando installi l'applicazione per la prima volta su un server.</p>
<p>Cosa succede durante l'installazione:</p>
<ol>
<li>Genera <code>APP_KEY</code> per la crittografia</li>
<li>Esegue tutte le migration per creare le tabelle del database</li>
<li>Popola i dati di base (diocesi, comuni, ruoli, preset)</li>
<li>Crea il collegamento <code>storage public/storage</code></li>
<li>Crea l'utente amministratore con i permessi completi</li>
</ol>
<h3>Modalità Restore da Backup</h3>
<p>Seleziona questa modalità quando vuoi migrare un'installazione esistente su un nuovo server.</p>
<p>Cosa serve:</p>
<ul>
<li>Un file ZIP generato dalla pagina <strong>Admin Backup</strong> del server originale</li>
<li>Il wizard accetta upload diretto del file o un percorso sul server</li>
</ul>
<p>Cosa succede durante il restore:</p>
<ol>
<li>Estrae il file ZIP in una cartella temporanea</li>
<li>Importa <code>database.sql</code> nel database MySQL configurato</li>
<li>Copia i file documenti in <code>storage/app/documenti/</code></li>
<li>Ripristina il file <code>.env</code> dal backup (preservando le credenziali DB del nuovo server)</li>
</ol>
<h3>Dopo l'Installazione</h3>
<ol>
<li><strong>Configura SSL</strong> con Let's Encrypt: