How To Install Composer on Ubuntu Server (16-04 or 16-10)

Composer is a popular tool for dependency management  which is widely used by PHP .Composer will check which other packages a specific project depends on and install them for you, using the appropriate versions according to the project requirements.

Prerequisites
For this post, you will need:

A system running Ubuntu 16.04 or 16.10
Access to the server as a regular user with sudo permission

Update and Installing the Dependencies:

Update the package manager with below Cli:

sudo apt-get update

 

Install curl in order to download Composer php-cli or installing and running it.Install php-mbstring package is necessary to provide functions for a library we’ll be using. git is used by Composer for downloading project dependencies, and unzip for extracting zipped packages.

#install one by one
sudo apt-get install curl 
sudo apt-get install php-cli 
sudo apt-get install php-mbstring 
sudo apt-get install git 
sudo apt-get install unzip

#install via single command 

sudo apt-get install curl php-cli php-mbstring git unzip

 

Downloading and Installing Composer:

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

 

Verify that the installer matches the SHA-384 hash :

#Run php command for validation
php -r "if (hash_file('SHA384', 'composer-setup.php') ===
 '669656bab3166a7aff8a7506b8cb2d1c292f042046c5a994c43155c0be6190fa0355160742ab2e1c88d40d5be660b410') 
{ echo 'Installer verified'; } else { echo 'Installer corrupt';
 unlink('composer-setup.php'); } echo PHP_EOL;"

#Output: 
Installer verified

Now install composer globally via below Cli:

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

#Output:
Output
All settings correct for using Composer
Downloading 1.1.1...

Composer successfully installed to: /usr/local/bin/composer
Use it: php /usr/local/bin/composer

 

Validate the  installation, run:

 

composer

#Output:
   ______
  / ____/___  ____ ___  ____  ____  ________  _____
 / /   / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__  )  __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
                    /_/
Composer version 1.4.1 2017-03-10 09:29:45

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.
  -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           Short information about Composer.
  archive         Create an archive of this composer package.
  browse          Opens the package's repository URL or homepage in your browser.
  clear-cache     Clears composer's internal package cache.
  clearcache      Clears composer's internal package cache.
  config          Set config options.
  create-project  Create 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            Execute a vendored binary/script.
  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.
  info            Show 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        Show 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.
  remove          Removes a package from the require or require-dev.
  require         Adds required packages to your composer.json and installs them.
  run-script      Run the scripts defined in composer.json.
  search          Search for packages.
  self-update     Updates composer.phar to the latest version.
  selfupdate      Updates composer.phar to the latest version.
  show            Show information about packages.
  status          Show a list of locally modified packages.
  suggests        Show package suggestions.
  update          Updates 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.

This means Composer was successfully installed on your system.

 

 

 

 

 

 

Leave a Reply

Your email address will not be published.