Composer, PHP için en iyi bağımlılık yönetimi aracıdır ve php tabanlı projeler için kurulum ve güncellemeleri kolaylaştırmak için oluşturulmuştur. Belirli bir projenin başka hangi paketlere bağlı olduğunu kontrol eder ve gereksinimlere göre uygun sürümleri kullanarak kurulum yapar.

Kuruluma geçmeden önce sudo yetkileri olan bir kullanıcı ile sisteme giriş yapın ve firewall yazılımını aktif hale getirin.

sudo apt update
sudo apt install php-cli unzip git

Artık kuruluma geçebiliriz.

cd ~
curl -sS https://getcomposer.org/installer -o composer-setup.php

İndirdiğimiz dosyanın bütünlük kontrolünü yapın.

HASH=`curl -sS https://composer.github.io/installer.sig`
echo $HASH

echo komutunun çıktısı aşağıdaki gibi olacaktır

e0012edf3e80b6978849f5eff0d4b4e4c79ff1609dd1e613307e16318854d24ae64f26d17af3ef0bf7cfb710ca74755a

Çıktı değerini doğrulamak için alttaki komutu uygulayın

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

Doğrulandı yazısını göreceksiniz. Eğer installer corrput diyorsa dosyayı yeniden indirin.

Composer kurulumunu global hale getirmek için /usr/local/bin altına alıyoruz:

sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer

Komut çıktısı şöyle olmalı:

All settings correct for using Composer
Downloading...

Composer (version 1.10.5) successfully installed to: /usr/local/bin/composer
Use it: php /usr/local/bin/composer

Kurulumu test edelim:

$ composer

Çıktı:


  / ____/___  ____ ___  ____  ____  ________  _____
 / /   / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__  )  __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
                    /_/
Composer version 1.10.5 2020-04-10 11:44:22

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


  Bu adımla birlikte Composer global olarak kuruldu ve kullanıma hazır. Dilerseniz composer-setup.php dosyasını global olarak kurmayıp, her bir proje için ayrı ayrı kullanabilirsiniz ancak kullanıcınız sudo yetkilerine sahip olduğundan buna gerek duymayacaksınız.