Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Installare e configurare Laravel per il nostro progetto

Come scaricare ed installare Laravel, configurare Docker per i container e avviare l'applicazione con Docker Compose.
Come scaricare ed installare Laravel, configurare Docker per i container e avviare l'applicazione con Docker Compose.
Link copiato negli appunti

Laravel è un framework PHP open-source che offre un'esperienza di sviluppo elegante e espressiva per la creazione di applicazioni web moderne e performanti. Creato da Taylor Otwell nel 2011, è diventato uno dei framework più popolari e ampiamente utilizzati nel mondo dello sviluppo web.

Ciò che distingue Laravel è la sua sintassi intuitiva che consente agli sviluppatori di scrivere codice pulito e mantenibile. Il framework offre un'ampia gamma di funzionalità pronte all'uso, tra cui routing, autenticazione, gestione delle sessioni, caching e molto altro ancora. Esse consentono di sviluppare rapidamente applicazioni web sofisticate.

Tra le caratteristiche chiave di Laravel troviamo:

  • Eloquent ORM: un potente sistema ORM che semplifica l'interazione con il database e la gestione dei dati.
  • Blade Templating Engine: un motore di template semplice ed elegante che consente di creare layout flessibili e riutilizzabili.
  • Routing semplice e flessibile: un sistema di routing intuitivo che permette di definire facilmente le rotte dell'applicazione.
  • Middleware: un meccanismo per filtrare le richieste HTTP prima che raggiungano le route dell'applicazione.
  • Sistema di autenticazione: per gestire facilmente l'accesso degli utenti.
  • Migrations e Seeders: strumenti per gestire il database in modo sicuro e replicabile attraverso il versioning dello schema e il seeding dei dati.

Installare Laravel

Create una directory a piacere nel vostro PC, aprite un terminale, fatelo puntare su di essa quindi digitate:

composer create-project laravel/laravel project1.0

È possibile installare prima il composer globalmente:

composer global require laravel/installer
laravel new project1.0

ma sappiate che in questo modo non potrete scegliere una versione specifica del framework e verrà scaricata sempre l'ultima. Se avete necessità di scaricare una versione precedente di Laravel lo potete fare digitando:

composer create-project laravel/laravel:^10.0 project1.0

In questo caso scaricherete la versione 10.

Noi scaricheremo l'ultima versione che ad oggi è la 11 e nella quale sono state introdotte alcune novità. Se volete saperne di più navigate qui.

Dopo aver lanciato il suddetto comando vi verrà chiesto se installare i package Breeze o Jetstream, voi scegliete none. Al momento lo scopo della guida è un altro, avremo occasione di approfondire entrambi i kit in un'altra occasione.

Nel passo successivo si dovrà scegliere quale ambiente di test di debug utilizzare, consigliamo quindi PhpUnit. MySQL sarà invece il database di riferimento del progetto.

Attendete che tutti i pacchetti con relative dipendenze siano scaricati. Una volta fatto spostatevi all'interno del progetto e da terminale digitate php artisan serve. Se si avvia il server tutto è andato come previsto.

Settare l'ambiente Docker

Se state utilizzando come me Visual Studio Code consiglio di scaricare l'estensione per Docker come da immagine seguente:

Questa aiuta e velocizza lo sviluppo grazie all'autocomplete. Posizionatevi poi nella root principale del progetto e create i file Dockerfile e docker-compose.yml.

Il Dockerfile è come una ricetta per creare il proprio piatto preferito. Invece di ingredienti contiene istruzioni per Docker su come costruire il container. Ad esempio, se state cucinando un'applicazione Laravel, il Dockerfile dice a Docker di prendere una base, come un piatto vuoto, aggiungere gli ingredienti necessari come PHP e Apache, copiare il codice sorgente del progetto Laravel e poi farlo funzionare.

docker-compose.yml elenca invece tutti i piatti (servizi) da ordinare e come li si vuole. Se state costruendo un'applicazione Laravel con un database, il docker-compose.yml avrà una voce per il servizio web (il sito Laravel) e una per il servizio database (MySQL, ad esempio). Dice a Docker come far interagire questi servizi, come esporre il sito web su una porta specifica e come collegare il database al sito.

In sostanza, il Dockerfile è la ricetta per costruire il container. docker-compose.yml è come un ordine al ristorante che dice a Docker cosa costruire e definisce le interazioni.

Sempre nella directory principale del progetto create la cartella Docker ed al suo interno il file entrypoint.sh.

Immagina che il file entrypoint.sh sia come un inserviente che prepara il locale prima che possiate iniziare a lavorare. Quando si avvia il container Docker questo inserviente viene chiamato per preparare tutto ciò che serve prima di iniziare effettivamente a servire l'applicazione.

Ecco cosa fa entrypoint.sh nel caso di un'applicazione Laravel:

  1. esegue le migrazioni del database (se necessario). Un po' come se l'inserviente preparasse il tavolo e le posate prima che si possa mangiare. Il file entrypoint.sh esegue le migrazioni del database per assicurarsi che il database sia pronto all'uso quando si avvia l'applicazione.
  2. Avvia il server web:. Una volta preparato il tavolo (il database) e le posate (l'ambiente), l'inserviente avvia il server web (come Apache o Nginx) che servirà l'applicazione Laravel. Un po' come se l'inserviente aprisse le porte del ristorante e desse il via al servizio.

Servire l'applicazione

Aprite il terminale e fatelo puntare alla directory principale del progetto, attenzione che i file Dockerfile, docker-compose.yml e la cartella Docker devono trovarsi nella stessa posizione:

Assicuratevi poi di aver avviato l'applicazione Docker quindi digitate:

docker-compose ps

se dovesse essere restituito un output come questo:

Avrete l'indicazione che il file è disponibile per il progetto, anche se per il momento è vuoto.

Conclusione

Inizialmente abbiamo scaricato l'ultima versione di Laravel per poter iniziare il nostro progetto. Dopo aver creato l'ambiente Docker, abbiamo creato il Dockerfile e il file docker-compose.yml per configurare il nostro ambiente di sviluppo.

Dopo aver scaricato Laravel, abbiamo configurato il Dockerfile per includere il codice sorgente all'interno del container. Inoltre, abbiamo aggiunto le istruzioni necessarie per installare le dipendenze del progetto Laravel, come Composer per gestire le dipendenze PHP.

Quindi abbiamo creato il file docker-compose.yml per definire i servizi necessari, come il server web (Apache) e il database (MySQL), e abbiamo specificato le configurazioni di rete e di volume.

Infine, abbiamo creato lo script entrypoint.sh per eseguire operazioni aggiuntive all'avvio del container, come le migrazioni del database, per assicurarci che il nostro ambiente sia completamente pronto per l'avvio dell'applicazione Laravel.

In sintesi, abbiamo seguito un percorso logico: prima abbiamo preparato l'ambiente di sviluppo scaricando Laravel, poi abbiamo configurato Docker per eseguire il nostro progetto e infine abbiamo personalizzato il processo di avvio del container per includere operazioni specifiche come le migrazioni del database. Nella prossimo articolo inizieremo a creare i nostri primi container in Docker.

Ti consigliamo anche