Sådan installeres Composer på Ubuntu: En smertefri installationsvejledning

Når man bygger software, hvad enten det er et simpelt eller komplekst projekt, er det næsten givet, at softwaren vil afhænge af nogle eksterne biblioteker, moduler eller komponenter for at fungere korrekt. Disse eksterne ressourcer, der er nødvendige for, at software kan fungere korrekt, er kendt som afhængigheder.

Effektiv styring af afhængigheder i ethvert projekt er en afgørende proces. Heldigvis er der forskellige værktøjer designet til at automatisere afhængighedsstyring og gøre det lettere for udviklere. Som udvikler vil dit værktøj til afhængighedsstyring blive påvirket af det sprog og det økosystem, du arbejder i.

I tilfælde af at du bygger dine projekter ved hjælp af PHP, bør du ikke lede længere end Composer som dit foretrukne værktøj til at styre afhængigheder i dine projekter.

Hvad er komponist?

Komponist er et populært værktøj, der er designet og bygget til at håndtere afhængigheder i PHP. Composer, som er meget inspireret af nodes npm og rubys bundler, giver dig mulighed for at erklære eksterne biblioteker, som dit PHP-projekt afhænger af, og det vil administrere dem for dig.

Det betyder, at Composer vil installere alle de afhængigheder, der er nødvendige for dit projekt, og også holde dem opdateret.

Det er også vigtigt at bemærke, at Composer ikke er en pakkeadministrator som Apt eller Yum. Så meget som det omhandler biblioteker, er disse biblioteker som standard ikke installeret globalt på en maskine. I stedet administrerer Composer afhængigheder på en per-projekt basis, og derfor installerer den kun afhængighederne lokalt i en mappe inde i det PHP-projekt, du er ved at bygge.

Composer giver dig også mulighed for at finde ud af, hvilke versioner af hvilke pakker der kan og skal installeres i dit projekt, og den installerer dem for dig. Det giver også en enkelt kommando, som du kan bruge til at opdatere alle afhængigheder i dit projekt.

Composer er et vigtigt værktøj, når du bygger projekter ved hjælp af PHP. Composer giver mulighed for effektiv afhængighedsstyring, og det giver også et repository kaldet Pakkerist som giver et stort udvalg af PHP-pakker og biblioteker, som du kan tilføje til dine PHP-projekter som afhængigheder.

Korrekt afhængighedsstyring ved hjælp af et værktøj som Composer giver mulighed for modulær udvikling af software, problemfri versionskontrol og forbedret samarbejde mellem teams. Derudover hjælper det med at undgå kompatibilitetsproblemer i software og hjælper med at gøre projekter mere vedligeholdelige.

Lad os nu se på, hvordan du kan installere Composer i Ubuntu. Men lad os først se på de forudsætninger, du skal opfylde, før du kan installere Ubuntu.

Forudsætninger for installation af Composer i Ubuntu

Sådan installeres Composer i Ubuntu:

1. Sørg for, at du kan få adgang til terminalen på din maskine og udføre kommandoer som root-bruger.

2. Har PHP version 7.2.5 og nyere installeret på din maskine. Du kan kontrollere, om du har PHP installeret på din maskine og dens version ved at åbne terminalen og udføre

php -version

Hvis du har PHP installeret, bør du få sådan et output:

Hvis PHP ikke er installeret, skal du udføre følgende kommando for at installere det:

sudo apt install php

3. Har et versionskontrolsystem. Git er et glimrende valg til dette. Bekræft at du har Git installeret ved at køre:

git --version

Hvis Git er installeret, får du et versionsnummer som sådan:

  Hvilket depot skal bruges i 2022

Hvis Git ikke er installeret, skal du køre følgende kommando for at installere det

sudo apt install git

4. Få en arkivhåndtering installeret på din maskine, der skal bruges til at dekomprimere filer. Til dette vil tjære være tilstrækkeligt. Tjek om tar er installeret på din maskine ved at køre:

tar --version

Hvis du ikke har tjære, kan du installere det ved at køre:

sudo apt-get install tar

Når du har opfyldt ovenstående forudsætninger, er du klar til at installere Composer.

Sådan installeres Composer på Ubuntu

Når du installerer Composer, kan du installere det globalt på din maskine eller lokalt i forbindelse med en PHP-installation. En global installation giver dig mulighed for at få adgang til og ringe til Composer fra enhver mappe på din maskine, i modsætning til en lokal installation.

At installere Composer globalt er den anbefalede måde at installere Composer på, og det er det, vi vil gøre.

Installation af Composer på Ubuntu gennem terminalen involverer at køre scripts fundet på Composer’s Hent side.

Følg følgende trin for at installere Composer globalt på Ubuntu:

1. Åbn terminalen og udfør følgende kommando for at downloade Composers installationsprogram til den aktuelle mappe.

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

2. Udfør følgende kommando for at bekræfte installationsprogrammet SHA-384.

php -r "if (hash_file('sha384', 'composer-setup.php') === 'e21205b207c3ff031906575712edab6f13eb0b361f2085f1f1237b7126d785e826a450292b6cfd1d64d92e6563bbde02') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

Installationsprogrammet SHA-384 er en kryptografisk hashværdi, der bruges til at bekræfte integriteten af ​​Composer-installationsprogrammet. Det er med andre ord en sikkerhedsforanstaltning for at sikre, at det installationsprogram, du downloadede, ikke er blevet manipuleret med eller ødelagt.

Kørsel af ovenstående kommando bør generere et output, der siger Installer verificeret som vist nedenfor. Fortsæt, når du får et sådant output, der bekræfter din installatørs integritet.

3. Udfør følgende kommando for at køre installationsprogrammet

php composer-setup.php

Du bør få sådan et output, der bekræfter, at Composer blev installeret.

Bemærk, at composer.phar, som er den eksekverbare fil for Composer, blev tilføjet til den mappe, du installerede den på.

4. Da Composer er blevet installeret, skal du køre følgende kommando for at fjerne det installationsprogram, du downloadede tidligere, da du ikke længere har brug for det.

php -r "unlink('composer-setup.php');"

5. For at sikre, at Composer er installeret globalt, og du kan kalde det fra en hvilken som helst mappe, vil du placere filen composer.phar i en mappe på din PATH. For at gøre dette skal du udføre følgende kommando og angive en adgangskode, når du bliver bedt om det

sudo mv composer.phar /usr/local/bin/composer

6. Bekræft, at Composer blev installeret korrekt ved at udføre følgende kommando:

composer

Hvis Composer blev installeret med succes, bør du få et sådant output.

Sådan bruger du Composer

Med Composer installeret er næste trin at bruge det til at administrere afhængigheder. Som nævnt tidligere har Composer et depot kaldet Pakkerist som har pakker, der kan installeres som afhængigheder ved hjælp af Composer.

For at se, hvordan man bruger Composer, skal vi installere en pakke kaldet http-besked som er en grænseflade, der beskriver HTTP-meddelelser.

Sådan bruger du Composer til at installere http-message:

1. Opret en ny mappe kaldet composerDemo og naviger inde i den ved at udføre følgende kommandoer i terminalen hhv.

mkdir composerDemo
cd composerDemo

2. Opret en .gitignore-fil i mappen ved at udføre:

touch .gitignore

Denne fil giver dig mulighed for at specificere, hvilke filer der ikke skal spores af Git.

  9 bedste praksis for containersikkerhed i DevOps

3. Generer en composer.json-fil til dit projekt ved at udføre:

composer init

En composer.json er en central konfigurationsfil, der bruges af Composer. I den angiver du metadata, der beskriver dit projekt, og angiver også de afhængigheder, som dit projekt er afhængig af, så komponisten automatisk kan administrere dem for dig.

Ovenstående kommando fører til outputtet nedenfor:

Guiden vil tage dig gennem oprettelse af en composer.json-fil. I den første prompt skal du trykke på Enter for at acceptere det foreslåede projektnavn.

4. I den næste prompt skal du give en kort beskrivelse af projektet og trykke på Enter. Du kan indsætte den korte beskrivelse nedenfor og trykke på Enter.

A demonstration of how to use PHP Composer

5. Den næste prompt beder om en forfatter; tryk på Enter for at bruge standarden.

6. Dernæst bliver du bedt om at angive Minimum Stability. Til det kan du lade det være tomt ved at trykke på Enter for at gå til den næste prompt.

7. Den næste prompt kræver, at du angiver en pakketype. For det skal du indtaste projektet og trykke på Enter som vist nedenfor:

8. I prompten, der beder om en licens, skal du trykke på Enter for at lade den være tom og gå til den næste

9. Du bliver derefter spurgt, om du vil angive dine afhængigheder; for dette skal du trykke på Enter for at vælge Ja. Dette vil så bede dig om at søge efter en pakke.

10. I søgningen efter en pakkeprompt skal du indtaste http-besked og trykke på enter. Dette vil søge efter den angivne pakke og returnere søgeresultaterne som vist nedenfor:

Pakken vi er interesseret i er den første pakke kaldet psr/http-message. For at vælge den skal du indtaste nummeret, der er knyttet til den, og trykke på Enter. Indtast derfor 0 (nul) og tryk på Enter.

11. Den næste prompt er at indtaste den versionsbegrænsning, der skal kræves (eller lade stå tomt for at bruge den seneste version). Til dette skal vi angive den version, vi vil bruge, eller lade den være tom for at bruge den seneste version.

For at tjekke pakkens seneste version, gå til dens side på Packagist. Den seneste version er version 2.0, som vist nedenfor:

Composer opdaterer automatisk pakker, når opdateringer er tilgængelige. Du ønsker dog ikke, at den skal opdatere til en version, der ikke er bagudkompatibel med den version, du i øjeblikket bruger i dit projekt, da det vil bryde din PHP-kode. For at undgå dette skal du indtaste følgende for at angive versionen af ​​pakken og trykke på Enter:

^2.0

Dette fortæller Composer at installere version 2.0 eller nyere, så længe den højere version er bagudkompatibel.

12. Du bliver derefter bedt om at søge efter en anden pakke; Tryk blot på Enter for at gå til den næste prompt og ikke søge efter en anden pakke.

13. Når du bliver bedt om at definere dine dev-afhængigheder, skal du trykke på Enter. På søgningen efter en pakkeprompt skal du trykke på Enter for at springe den over, da vores dev-afhængigheder vil være de samme som vores Live-afhængigheder.

  Sådan tilføjer du venner på Google Stadia

14. Den næste prompt vil bede dig om at tilføje PSR-4 autoload mapping. Tryk på Enter for at springe det over.

15. Dette vil give dig en forhåndsvisning af filen composer.json, du lige har genereret, som vist nedenfor:

Tryk på Enter for at bekræfte genereringen.

16. Den næste prompt spørger, om du vil installere de afhængigheder, du har angivet. Til dette skal du trykke på Enter for at installere dem som vist nedenfor:

17. Indtast følgende kommando i terminalen for at åbne det projekt, du lige har oprettet, i en kodeeditor

code .

Resultatet er vist nedenfor:

Bemærk, at en composer.json-fil blev genereret, og vores afhængigheder er specificeret under nøglen for require. De installerede afhængigheder installeres i en mappe kaldet vendor.

18. For at undgå at spore leverandørbiblioteket, som har alle afhængigheder, skal du åbne .gitignore-filen og indsætte følgende linje.

/vendor/

Det anbefales, at du ikke sporer denne fil, fordi den kan blive meget stor, og afhængigheder kan nemt installeres automatisk fra filen composer.json.

19. Efter at have oprettet en composure.json-fil, kan du nemt tilføje nye afhængigheder ved at redigere den nødvendige sektion i composure.json-filen. For eksempel, for at tilføje en pakke kaldet log, skal du tilføje den til den påkrævede sektion som vist nedenfor:

"require": {
        "psr/http-message": "^2.0",
        "psr/log": "^3.0.0"
    },

20. For at installere den nye afhængighed i dit projekt, gå tilbage til terminalen og udfør:

composer update

Resultatet er vist nedenfor:

Dette installerer den pakke, du lige har tilføjet til din composure.json-fil.

Med det er du nu klar til at begynde at arbejde på dine PHP-projekter og bruge Composer til at administrere afhængigheder i dit projekt.

Sådan optimerer du Composer for bedre pakkehåndtering

For at give Composer mulighed for at arbejde mere effektivt, skal du sørge for at angive versionsbegrænsninger for afhængigheder nøjagtigt. Et eksempel på dette var, da vi lavede “^2.0”.

Undgå meget brede versionsbegrænsninger såsom “*”, hvilket betyder, at Composer kan installere enhver version. Dette kan føre til kompatibilitetsproblemer og stabilitetsproblemer i dit projekt, da du ikke kan forudsige, hvilken version Composer vil installere.

Undgå desuden at tilføje for mange brugerdefinerede scripts til din composer.json-fil. Tilføj kun de nødvendige scripts. Overdrevne scripts fører ofte til en enorm overhead under afhængighedsstyring.

For at optimere driftshastigheden af ​​Composer skal du aktivere PHP curl extension. Du kan også bruge Composer-plugins såsom hirak/prestissimo, som paralleliserer Composer-operationer, hvilket igen fremskynder installationen af ​​pakker.

Du kan også rense Composers cache for at fjerne gamle og ubrugte pakker for at optimere dens ydeevne. Derudover skal du huske ikke at spore og committe leverandørbiblioteket, hvor pakker er installeret af Composer. Dette vil hjælpe med at fremskynde kloningen og opdateringen af ​​dine projekters arkiver.

Sådan afinstallerer du Composer

Hvis du ikke længere vil bruge Composer i Ubuntu, kan du afinstallere det ved at udføre følgende kommando:

sudo rm -rf /usr/local/bin/composer

Du kan bekræfte, at Composer er afinstalleret med succes ved at udføre følgende kommando:

composer

Hvis den er fuldstændig afinstalleret, bør du få sådan et output:

Konklusion

Afhængighedsstyring er en afgørende proces, når man bygger projekter. Effektiv afhængighedsstyring sikrer, at du undgår kompatibilitetsproblemer i dine projekter og har mere vedligeholdelige projekter.

Derudover giver det mulighed for modulær softwareudvikling og forbedret samarbejde mellem udviklerteams. Hvis du bygger projekter i PHP, kan du overveje at bruge Composer effektivt og nemt administrere afhængigheder i dit projekt.

Dernæst kan du også læse om, hvad Ubuntu PPA er, og hvordan du installerer det.