Guida a Composer gestore di dipendenze standard per l'ecosistema: introduzione.

Composer è uno strumento per la gestione delle dipendenze in PHP. Permette di dichiarare le librerie da cui dipende il progetto e si occuperà di gestirle (installarle/aggiornarle) automaticamente.
Gestione delle dipendenze#
Composer non è un gestore di pacchetti nello stesso senso di Yum o Apt. Certo, si occupa di "pacchetti" o librerie, ma li gestisce a livello di singolo progetto, installandoli in una directory (ad esempio `composer` vendor) all'interno del progetto stesso. Per impostazione predefinita, non installa nulla a livello globale. Pertanto, è un gestore di dipendenze. Tuttavia, per comodità, supporta un progetto "globale" tramite il comando `global` .
Questa idea non è nuova e Composer è fortemente ispirato a npm di Node.js e a Bundler di Ruby .
Supponiamo:
- Hai un progetto che dipende da diverse librerie.
- Alcune di queste biblioteche dipendono da altre biblioteche.
Compositore:
- Consente di dichiarare le librerie da cui si dipende.
- Individua quali versioni di quali pacchetti possono e devono essere installate e le installa (ovvero le scarica nel tuo progetto).
- È possibile aggiornare tutte le dipendenze con un unico comando.
Per maggiori dettagli sulla dichiarazione delle dipendenze, consultare il capitolo "Utilizzo di base" .
Requisiti di sistema#
Composer, nella sua versione più recente, richiede PHP 7.2.5 per funzionare. Una versione con supporto a lungo termine (2.2.x) offre ancora supporto per PHP 5.3.2 e versioni successive, nel caso in cui si utilizzi ancora una versione precedente di PHP. Sono inoltre necessarie alcune impostazioni PHP e flag di compilazione sensibili, ma durante l'installazione verranno visualizzati avvisi di eventuali incompatibilità.
Composer necessita di diverse applicazioni di supporto per funzionare efficacemente, rendendo più efficiente il processo di gestione delle dipendenze dei pacchetti. Per la decompressione dei file, Composer si affida a strumenti come 7z(o 7zz), gzip, tar, unrar, unzipe xz. Per quanto riguarda i sistemi di controllo di versione, Composer si integra perfettamente con Fossil, Git, Mercurial, Perforce e Subversion, garantendo così il corretto funzionamento dell'applicazione e la gestione dei repository delle librerie. Prima di utilizzare Composer, assicurarsi che queste dipendenze siano installate correttamente sul sistema.
Composer è multipiattaforma e ci impegniamo affinché funzioni altrettanto bene su Windows, Linux e macOS.
Installazione - Linux / Unix / macOS#
Download del file eseguibile di Composer#
Composer offre un pratico programma di installazione che puoi eseguire direttamente dalla riga di comando. Sentiti libero di scaricare questo file o di consultarlo su GitHub se desideri saperne di più sul funzionamento interno del programma di installazione. Il codice sorgente è in puro PHP.
In sintesi, esistono due modi per installare Composer: localmente come parte del progetto, oppure globalmente come eseguibile a livello di sistema.
Localmente#
Per installare Composer localmente, esegui il programma di installazione nella directory del tuo progetto. Consulta la pagina di download per le istruzioni.
Il programma di installazione verificherà alcune impostazioni PHP e poi scaricherà composer.pharil file nella directory di lavoro. Questo file è il binario di Composer. Si tratta di un PHAR (PHP archive), un formato di archivio per PHP che può essere eseguito, tra le altre cose, dalla riga di comando.
Ora esegui il php composer.pharcomando per avviare Composer.
È possibile installare Composer in una directory specifica utilizzando l' --install-diropzione e, inoltre, rinominarla utilizzando l' --filenameopzione. Quando si esegue il programma di installazione seguendo le istruzioni della pagina di download, aggiungere i seguenti parametri:
php composer-setup.php --install-dir=bin --filename=composer
Ora esegui il php bin/composercomando per avviare Composer.
A livello globale#
È possibile posizionare il file PHAR di Composer ovunque si desideri. Se lo si inserisce in una directory che fa parte del proprio PATH PATH, è possibile accedervi a livello globale. Sui sistemi Unix è persino possibile renderlo eseguibile e richiamarlo senza utilizzare direttamente l' phpinterprete.
Dopo aver eseguito il programma di installazione seguendo le istruzioni della pagina di download, puoi eseguire questo comando per spostare composer.phar in una directory presente nel tuo PATH:
mv composer.phar /usr/local/bin/composer
Se preferisci installarlo solo per il tuo utente ed evitare di richiedere i permessi di root, puoi utilizzare ~/.local/bininvece che è disponibile di default su alcune distribuzioni Linux.
Nota: se quanto sopra non riesce a causa di problemi di autorizzazione, potrebbe essere necessario eseguirlo di nuovo con
sudo.
Nota: in alcune versioni di macOS la
/usrdirectory non esiste per impostazione predefinita. Se ricevi l'errore "/usr/local/bin/composer: Nessun file o directory di questo tipo", devi creare la directory manualmente prima di procedere:mkdir -p /usr/local/bin.
Nota: per informazioni su come modificare il tuo PATH, consulta l' articolo di Wikipedia e/o utilizza il tuo motore di ricerca preferito.
Ora esegui composerper eseguire Composer invece di php composer.phar.
Installazione - Windows#
Utilizzo del programma di installazione#
Questo è il modo più semplice per installare Composer sul tuo computer.
Scarica ed esegui Composer-Setup.exe . Questo installerà l'ultima versione di Composer e imposterà la variabile d'ambiente PATH in modo da poterla richiamare composerda qualsiasi directory tramite la riga di comando.
Nota: chiudi il terminale corrente. Prova a utilizzare il programma con un nuovo terminale: questo è importante perché la variabile PATH viene caricata solo all'avvio del terminale.
Installazione manuale#
Passa a una directory sul tuo computer PATHed esegui il programma di installazione seguendo le istruzioni della pagina di download per scaricare composer.phar.
Crea un nuovo composer.batfile accanto a composer.phar:
Utilizzo di cmd.exe:
C:\bin> echo @php "%~dp0composer.phar" %*>composer.bat
Utilizzo di PowerShell:
PS C:\bin> Set-Content composer.bat '@php "%~dp0composer.phar" %*'
Aggiungi la directory alla variabile d'ambiente PATH, se non lo è già. Per informazioni su come modificare la variabile PATH, consulta questo articolo e/o utilizza il tuo motore di ricerca preferito.
Chiudi il terminale corrente. Prova a utilizzare il terminale con uno nuovo:
C:\Users\username>composer -V
Composer version 2.4.0 2022-08-16 16:10:48
Immagine Docker#
Composer viene pubblicato come container Docker in diverse posizioni; per l'elenco completo, consultare il file README di composer/docker .
Esempio di utilizzo:
docker pull composer/composer
docker run --rm -it -v "$(pwd):/app" composer/composer install
Per aggiungere Composer a un Dockerfile esistente , è sufficiente copiare il file binario dalle immagini precompilate di dimensioni ridotte:
# Latest release
COPY --from=composer/composer:latest-bin /composer /usr/bin/composer
# Specific release
COPY --from=composer/composer:2-bin /composer /usr/bin/composer
Nota: quando si utilizza questo metodo, è necessario installare manualmente altre dipendenze di runtime all'interno dell'immagine; vedere anche https://github.com/composer/composer/blob/main/README.md#binary-dependencies .
Per ulteriori informazioni sull'utilizzo, consultare la descrizione dell'immagine .
Nota: i problemi specifici di Docker devono essere segnalati nel repository composer/docker .
Nota: puoi anche usare composeral posto di composer/composercome nome dell'immagine sopra. È più breve ed è un'immagine ufficiale di Docker ma non è pubblicata direttamente da noi e quindi di solito riceve nuove versioni con un ritardo di alcuni giorni. Importante : le immagini con alias brevi non hanno equivalenti solo binari, quindi per COPY --froml'approccio è meglio usare composer/composerquelli.
Utilizzo di Composer#
Ora che hai installato Composer, sei pronto per usarlo! Passa al capitolo successivo per una breve dimostrazione.
Commenti
Posta un commento