GNU/Linux >> Belajar Linux >  >> Debian

Cara Menginstal &Menggunakan Komposer PHP di Debian 11 Bullseye

Composer adalah manajer paket tingkat aplikasi untuk bahasa pemrograman PHP yang mirip dengan NPM untuk Node.Js atau PIP untuk Python. Composer menyediakan format standar untuk mengelola semua dependensi perangkat lunak PHP dan perpustakaan yang diperlukan dengan mengunduh semua paket PHP yang diperlukan dari proyek Anda dan mengelolanya untuk Anda. Ini digunakan oleh sebagian besar kerangka kerja PHP modern seperti Laravel, Drupal, Magento, dan Symfony.

Dalam tutorial berikut, Anda akan mempelajari cara mengunduh dan menginstal composer, bersama dengan beberapa cara penting untuk bekerja dengan composer di Debian 11 Bullseye.

Prasyarat

  • OS yang Disarankan: Debian 11 Bullseye
  • Akun pengguna: Akun pengguna dengan hak istimewa sudo atau akses root (perintah su) .
  • Paket yang Diperlukan: wget, PHP 5.3 atau lebih tinggi

Memperbarui Sistem Operasi

Perbarui Debian 11 . Anda sistem operasi untuk memastikan semua paket yang ada mutakhir:

sudo apt update && sudo apt upgrade

Akses Root atau Sudo

Secara default, ketika Anda membuat akun Anda saat memulai dengan Debian dibandingkan dengan distribusi lain, itu tidak secara otomatis menerima status sudoers. Anda harus memiliki akses ke sandi root untuk menggunakan perintah su atau kunjungi tutorial kami tentang Cara Menambahkan Pengguna ke Sudoers di Debian.

Instal Dependensi

Paket-paket berikut diperlukan untuk mengunduh komposer dan untuk penggunaan di masa mendatang. Catatan, jika menggunakan versi PHP tertentu, Anda perlu menyesuaikan paket PHP di bawah ini agar sesuai dengan versinya. Misalnya, menginstal PHP 8.0 akan menjadi 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

Instal Komposer PHP

Tim Composer telah membuat skrip PHP resmi untuk menginstal dan mengkonfigurasi PHP Composer di sistem Anda. Anda dapat mengunduh ini dengan mengunjungi halaman unduhan atau membuka terminal Debian Anda dan menjalankan perintah berikut.

Metode PHP:

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

Metode WGET:

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

Sekarang dengan setup.php yang diunduh, sekarang saatnya untuk menginstal composer. Ini bisa dalam dua cara berbeda, satu di mana Anda dapat menginstal komposer secara global, atau alternatif kedua adalah menginstal per basis aplikasi PHP.

Untuk memasang secara global:

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

Untuk menginstal per aplikasi:

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

Sesuai di atas, Anda perlu menavigasi ke direktori proyek PHP dan membuat direktori bin untuk komposer PHP yang akan diinstal.

Setelah selesai, konfirmasikan composer telah diinstal dan build serta versi mana.

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

Sekarang uji instalasi composer dengan perintah berikut:

composer

Contoh keluaran:

   ______
  / ____/___  ____ ___  ____  ____  ________  _____
 / /   / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__  )  __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
                    /_/
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.

Cara bekerja dengan Komposer PHP

Tutorial ini akan menunjukkan kepada Anda beberapa fungsi penting ketika komposer PHP diinstal untuk menguji operasinya.

Pertama, buat direktori proyek Anda:

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

Selanjutnya, cari paket dari Packagist, atau alternatif gunakan contoh tutorial dan jalankan perintah berikut untuk menginisialisasi file composer.json baru dan menginstal paket karbon:

composer require psr/log

Contoh keluaran:

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

Seperti di atas, composer akan secara otomatis membuat dan mengupdate file composer.json beserta dependensi yang diperlukan. Atau, Anda dapat menginstal dan atau menurunkan versi paket yang ada ke nomor versi tertentu.

Contoh:

composer require psr/log=1.0

Di direktori proyek, Anda dapat membuat daftar file dan direktori di dalamnya menggunakan perintah ls :

ls -l

Contoh keluaran:

./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

Rincian persyaratan dan file yang terdaftar.

  • composer.json – File dibuat untuk proyek dan semua dependensi PHP.
  • composer.lock – File yang berisi daftar semua paket dan versi.
  • penjual – Direktori tempat dependensi diunduh dan diinstal.

Dengan proyek Anda, Anda mungkin ingin atau perlu memperbarui dependensi, dan ini dapat dilakukan dengan menjalankan perintah berikut:

composer update

Contoh keluaran:

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

Seperti yang Anda lihat di atas, tidak ada dependensi yang memerlukan pembaruan. Jika ada, prosesnya akan dimulai.

Jika Anda tidak membutuhkan modul lagi, Anda dapat menghapusnya dengan perintah composer remove:

composer remove psr/log

Contoh keluaran:

./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

Saat menghapus paket, seperti halnya menginstal, menghapus akan secara otomatis memperbarui file composer.json. Anda dapat memverifikasi ini menggunakan perintah cat .

cat composer.json

Contoh sebelum penghapusan paket psr/log:

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

Contoh setelah penghapusan paket psr/log:

{
}

Cara Meningkatkan Komposer PHP

Fitur yang berguna dari komposer PHP adalah dapat meningkatkan sendiri ke versi stabil terbaru yang tersedia. Jalankan perintah berikut untuk meningkatkan.

composer self-update

Contoh keluaran:

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

Seperti disebutkan di atas, komposer PHP sudah dalam versi terbaru. Namun, jika upgrade tersedia, Anda akan diminta untuk mengupgrade.


Debian
  1. Cara Menginstal Komposer PHP Di Debian Linux

  2. Cara Menginstal PHP di Debian 11

  3. Cara Menginstal PHP 7.2 di Debian 9

  1. Cara Menginstal PHP 8.0 di Debian 11

  2. Cara Menginstal PHP 8.0 di Debian 10 / Debian 9

  3. Cara Menginstal Komposer PHP di Debian 8

  1. Cara Menginstal PHP 7.4 di Debian 10

  2. Cara Menginstal PHP 8 di Debian 10

  3. Cara Menginstal PHP 7.3 di Debian 10