GNU/Linux >> Znalost Linux >  >> Debian

Jak nainstalovat a používat PHP Composer na Debian 11 Bullseye

Composer je správce balíčků na úrovni aplikace pro programovací jazyk PHP podobný NPM pro Node.Js nebo PIP pro Python. Composer poskytuje standardní formát pro správu všech závislostí softwaru PHP a požadovaných knihoven stažením všech požadovaných balíků PHP pro váš projekt a jejich správou za vás. Používá jej většina moderních frameworků PHP, jako jsou Laravel, Drupal, Magento a Symfony.

V následujícím tutoriálu se naučíte, jak stáhnout a nainstalovat skladatele, spolu s některými základními informacemi o tom, jak pracovat se skladatelem na Debianu 11 Bullseye.

Předpoklady

  • Doporučený operační systém: Debian 11 Bullseye
  • Uživatelský účet: Uživatelský účet s právy sudo nebo přístup root (příkaz su) .
  • Požadované balíčky: wget, PHP 5.3 nebo vyšší

Aktualizace operačního systému

Aktualizujte svůj Debian 11 operační systém, abyste se ujistili, že všechny existující balíčky jsou aktuální:

sudo apt update && sudo apt upgrade

Root nebo Sudo Access

Ve výchozím nastavení, když vytvoříte svůj účet při spuštění s Debianem v porovnání s jinými distribucemi, automaticky nezíská status sudoers. Musíte mít přístup k heslu uživatele root použijte příkaz su nebo navštivte náš tutoriál Jak přidat uživatele do Sudoers na Debianu.

Instalovat závislosti

Ke stažení skladatele a pro budoucí použití jsou vyžadovány následující balíčky. Všimněte si, že pokud používáte konkrétní verzi PHP, budete muset upravit balíčky PHP níže, aby vyhovovaly verzi. Například instalace PHP 8.0 bude php8.0-mbstring.

sudo apt install curl wget php-common php-cli php-gd php-mysql php-curl php-intl php-mbstring php-bcmath php-imap php-xml php-zip git unzip

Nainstalujte PHP Composer

Tým Composer vytvořil oficiální PHP skript pro instalaci a konfiguraci PHP Composer ve vašem systému. Můžete si jej stáhnout na stránce stahování nebo otevřením terminálu Debianu a provedením následujícího.

Metoda PHP:

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

Metoda WGET:

wget -O composer-setup.php https://getcomposer.org/installer

Nyní, když je soubor setup.php stažen, je čas nainstalovat skladatel. To může být dvěma různými způsoby, jedním můžete nainstalovat skladatel globálně, nebo druhou alternativou, kterou je instalace na bázi PHP aplikace.

Globální instalace:

php composer-setup.php --install-dir=/usr/local/bin --filename=composer
chmod +x /usr/local/bin/composer

Instalace podle aplikace:

cd /example-project/php-application && mkdir -p bin 
php composer-setup.php --install-dir=bin --filename=composer
chmod +x bin/composer

Jak je uvedeno výše, budete muset přejít do adresáře projektu PHP a vytvořit adresář bin pro instalaci skladatele PHP.

Po dokončení potvrďte, že je skladatel nainstalován a o jakou sestavení a verzi se jedná.

composer --version
Composer version 2.1.8 2021-09-15 13:55:14

Nyní otestujte instalaci skladatele pomocí následujícího příkazu:

composer

Příklad výstupu:

   ______
  / ____/___  ____ ___  ____  ____  ________  _____
 / /   / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__  )  __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
                    /_/
Composer version 2.1.8 2021-09-15 13:55:14

Usage:
  command [options] [arguments]

Options:
  -h, --help                     Display this help message
  -q, --quiet                    Do not output any message
  -V, --version                  Display this application version
      --ansi                     Force ANSI output
      --no-ansi                  Disable ANSI output
  -n, --no-interaction           Do not ask any interactive question
      --profile                  Display timing and memory usage information
      --no-plugins               Whether to disable plugins.
  -d, --working-dir=WORKING-DIR  If specified, use the given directory as working directory.
      --no-cache                 Prevent use of the cache
  -v|vv|vvv, --verbose           Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug

Available commands:
  about                Shows a short information about Composer.
  archive              Creates an archive of this composer package.
  browse               Opens the package's repository URL or homepage in your browser.
  cc                   Clears composer's internal package cache.
  check-platform-reqs  Check that platform requirements are satisfied.
  clear-cache          Clears composer's internal package cache.
  clearcache           Clears composer's internal package cache.
  config               Sets config options.
  create-project       Creates new project from a package into given directory.
  depends              Shows which packages cause the given package to be installed.
  diagnose             Diagnoses the system to identify common errors.
  dump-autoload        Dumps the autoloader.
  dumpautoload         Dumps the autoloader.
  exec                 Executes a vendored binary/script.
  fund                 Discover how to help fund the maintenance of your dependencies.
  global               Allows running commands in the global composer dir ($COMPOSER_HOME).
  help                 Displays help for a command
  home                 Opens the package's repository URL or homepage in your browser.
  i                    Installs the project dependencies from the composer.lock file if present, or falls back on the composer.json.
  info                 Shows information about packages.
  init                 Creates a basic composer.json file in current directory.
  install              Installs the project dependencies from the composer.lock file if present, or falls back on the composer.json.
  licenses             Shows information about licenses of dependencies.
  list                 Lists commands
  outdated             Shows a list of installed packages that have updates available, including their latest version.
  prohibits            Shows which packages prevent the given package from being installed.
  reinstall            Uninstalls and reinstalls the given package names
  remove               Removes a package from the require or require-dev.
  require              Adds required packages to your composer.json and installs them.
  run                  Runs the scripts defined in composer.json.
  run-script           Runs the scripts defined in composer.json.
  search               Searches for packages.
  self-update          Updates composer.phar to the latest version.
  selfupdate           Updates composer.phar to the latest version.
  show                 Shows information about packages.
  status               Shows a list of locally modified packages.
  suggests             Shows package suggestions.
  u                    Upgrades your dependencies to the latest version according to composer.json, and updates the composer.lock file.
  update               Upgrades your dependencies to the latest version according to composer.json, and updates the composer.lock file.
  upgrade              Upgrades your dependencies to the latest version according to composer.json, and updates the composer.lock file.
  validate             Validates a composer.json and composer.lock.
  why                  Shows which packages cause the given package to be installed.
  why-not              Shows which packages prevent the given package from being installed.

Jak pracovat s PHP Composer

Výukový program vám ukáže některé základní funkce, když je nainstalován PHP skladatel pro testování jeho provozu.

Nejprve vytvořte adresář projektu:

mkdir ~/composer-test
cd ~/composer-test

Dále najděte balíček od Packagist nebo použijte příklad z výukového programu a spusťte následující příkaz pro inicializaci nového souboru skladatel.json a instalaci balíčku uhlíku:

composer require psr/log

Příklad výstupu:

Using version ^1.1 for psr/log
./composer.json has been created
Running composer update psr/log
Loading composer repositories with package information
Updating dependencies
Lock file operations: 1 install, 0 updates, 0 removals
  - Locking psr/log (1.1.4)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 1 install, 0 updates, 0 removals
  - Downloading psr/log (1.1.4)
  - Installing psr/log (1.1.4): Extracting archive
Generating autoload files

Jak je uvedeno výše, skladatel automaticky vytvoří a aktualizuje soubor skladatel.json spolu s požadovanými závislostmi. Alternativně můžete nainstalovat a nebo downgradovat stávající balíčky na konkrétní číslo verze.

Příklad:

composer require psr/log=1.0

V adresáři projektu můžete zobrazit seznam souborů a adresářů v něm pomocí příkazu ls :

ls -l

Příklad výstupu:

./composer.json has been updated
Running composer update psr/log
Loading composer repositories with package information
Updating dependencies
Lock file operations: 0 installs, 1 update, 0 removals
  - Downgrading psr/log (1.1.4 => 1.0.0)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 0 installs, 1 update, 0 removals
  - Downloading psr/log (1.0.0)
  - Downgrading psr/log (1.1.4 => 1.0.0): Extracting archive
Generating autoload files

Rozpis podmínek a uvedených souborů.

  • composer.json – Soubor vytvořený pro projekt a všechny závislosti PHP.
  • composer.lock – Soubor obsahující seznam všech balíčků a verzí.
  • prodejce – Adresář, kam se stahují a instalují závislosti.

S vaším projektem můžete chtít nebo vyžadovat aktualizaci závislostí, a to lze provést spuštěním následujícího příkazu:

composer update

Příklad výstupu:

Loading composer repositories with package information
Updating dependencies
Nothing to modify in lock file
Installing dependencies from lock file (including require-dev)
Nothing to install, update or remove
Generating autoload files

Jak můžete vidět výše, žádné závislosti nevyžadují aktualizaci. Pokud by tomu tak bylo, proces by začal.

Pokud již modul nepotřebujete, můžete jej odebrat pomocí příkazu odstranění skladatele:

composer remove psr/log

Příklad výstupu:

./composer.json has been updated
Running composer update psr/log
Loading composer repositories with package information
Updating dependencies
Lock file operations: 0 installs, 0 updates, 1 removal
  - Removing psr/log (1.0.0)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 0 installs, 0 updates, 1 removal
  - Removing psr/log (1.0.0)
Generating autoload files

Při odstraňování balíčků, stejně jako při instalaci, odstranění automaticky aktualizuje soubor skladatel.json. Můžete to ověřit pomocí příkazu cat .

cat composer.json

Příklad před odstraněním balíčku psr/log:

{
    "require": {
        "psr/log": "1.0"
    }
}

Příklad po odstranění balíčku psr/log:

{
}

Jak upgradovat PHP Composer

Praktickou vlastností PHP skladatele je, že se může sám upgradovat na nejnovější dostupnou stabilní verzi. Pro aktualizaci spusťte následující příkaz.

composer self-update

Příklad výstupu:

You are already using the latest available Composer version 2.1.8 (stable channel).

Jak bylo uvedeno výše, PHP skladatel je již v nejnovější verzi. Pokud je však k dispozici aktualizace, budete vyzváni k aktualizaci.


Debian
  1. Jak nainstalovat PHP Composer na Debian Linux

  2. Jak nainstalovat PHP 7.4 na Debian 10

  3. Jak nainstalovat PHP na Debian 11

  1. Jak nainstalovat PHP 8.0 na Debian 11

  2. Jak nainstalovat PHP 8.0 na Debian 10 / Debian 9

  3. Jak nainstalovat PHP Composer na Debian 8

  1. Jak nainstalovat PHP 8 na Debian 10

  2. Jak nainstalovat PHP 7.2 na Debian 9

  3. Jak nainstalovat PHP 7.3 na Debian 10