Composer adalah alat manajemen ketergantungan untuk php, seperti cpan
untuk perl. Jika Anda telah membaca tutorial tentang menginstal cpan, arsitekturnya akan agak akrab. Komposer, sebagai alat baris perintah adalah klien yang dapat mengambil dan memperbarui perpustakaan php yang kami tandai sesuai kebutuhan, serta perpustakaan tempat ini bergantung, dll.
Sumber perpustakaan ini adalah packageagist.org, repositori paket php publik yang besar. Kami dapat menelusuri repositori dengan browser untuk menemukan paket yang ingin kami gunakan, lalu memasukkannya ke dalam proyek kami dengan bantuan Composer. Dan dengan menyelesaikan dependensi itu sendiri, Composer dapat membuat hidup kita lebih mudah jika kita bergantung pada paket eksternal. Pada gilirannya, kami juga dapat membagikan perpustakaan kami, sehingga komunitas juga dapat mengaksesnya melalui Composer.
Dalam tutorial ini kita akan menginstal Composer pada Red Hat Enterprise Linux 8, dan menandai sebuah paket sebagai dependensi yang diperlukan untuk proyek kita, untuk melihat alat tersebut bekerja.
Dalam tutorial ini Anda akan mempelajari:
- Cara menginstal Komposer
- Cara mendefinisikan paket sebagai ketergantungan
- Cara menginstal dependensi dengan Komposer
Bantuan utama komposer.
Persyaratan dan Konvensi Perangkat Lunak yang Digunakan
Kategori | Persyaratan, Konvensi, atau Versi Perangkat Lunak yang Digunakan |
---|---|
Sistem | Red Hat Enterprise Linux 8 |
Perangkat Lunak | Komposer 1.8.0 |
Lainnya | Akses istimewa ke sistem Linux Anda sebagai root atau melalui sudo perintah. |
Konvensi | # – membutuhkan perintah linux yang diberikan untuk dieksekusi dengan hak akses root baik secara langsung sebagai pengguna root atau dengan menggunakan sudo perintah$ – membutuhkan perintah linux yang diberikan untuk dieksekusi sebagai pengguna biasa yang tidak memiliki hak istimewa |
Cara menginstal composer di Redhat 8 petunjuk langkah demi langkah
Untuk dapat menggunakan komposer kita secara alami membutuhkan php
, dengan beberapa ekstensi. PHP 7.2 dan ekstensinya dapat dijangkau setelah mengaktifkan repositori manajemen langganan, serta pada penginstal yang didistribusikan dalam format ISO.
- Pertama kita perlu menginstal paket terkait php dengan
dnf
:dnf install php php-cli php-zip php-json
- Sekarang kita dapat mengunduh penginstal Komposer dengan php:
# php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
- Untuk dapat mengakses alat dari mana saja di sistem, kami menempatkannya di
$PATH
./usr/local/bin
termasuk dalam$PATH
secara default.# php composer-setup.php --install-dir=/usr/local/bin --filename=composer All settings correct for using Composer Downloading... Composer (version 1.8.0) successfully installed to: /usr/local/bin/composer Use it: php /usr/local/bin/composer
- Untuk menguji fungsionalitas, kami membuat direktori kerja yang merupakan root dari
php
our kami proyek pengembangan:$ mkdir myProject
Dan masukkan:
$ cd myProject
Setelah menjelajahi repositori, kami memutuskan bahwa kami memerlukan
zend-eventmanager
paket, versi3.2.1
. Kami membuat file teks bernamacomposer.json
dengan konten berikut di direktori root proyek kami:{ "require": { "zendframework/zend-eventmanager": "3.2.1" } }
- Untuk menginstal paket yang kita definisikan sebagai dependensi, kita dapat menggunakan
composer
yang baru diinstal :$ composer install Loading composer repositories with package information Updating dependencies (including require-dev) Package operations: 1 install, 0 updates, 0 removals - Installing zendframework/zend-eventmanager (3.2.1): Downloading (100%) zendframework/zend-eventmanager suggests installing container-interop/container-interop (^1.1.0, to use the lazy listeners feature) zendframework/zend-eventmanager suggests installing zendframework/zend-stdlib (^2.7.3 || ^3.0, to use the FilterChain feature) Writing lock file Generating autoload files
Jika kita mencantumkan direktori kerja kita, kita akan melihat file kunci, dan
vendor
direktori. Yang terakhir adalah tempatcomposer
mengunduh paket yang diperlukan.$ ls composer.json composer.lock vendor
$ ls vendor/ autoload.php composer zendframework
Di dalam
vendor
direktori adalah paket yang kami butuhkan, danautoload.php
. Ini adalah satu-satunya file yang perlu kami sertakan dalam kode kami untuk menggunakan salah satu perpustakaan yang kami instal dengancomposer
. Itu dibuat ulang pada pemasangan/peningkatan paket baru.