In today’s guide, we’ll discuss how you can install PHP Composer on CentOS 8 / RHEL 8 Linux machine. Composer is a PHP application package manager created to provide a standard format for managing dependencies of PHP software and required libraries. This tool is helpful when a developer want to manage and integrate external packages into their PHP projects.
Install PHP Composer on CentOS 8 / RHEL 8
Now that we’ve covered the basics, we can start the actual installation of Composer in our CentOS 8 / RHEL 8 Linux box.
Step 1: Install PHP
List available PHP AppStream modules.
$ dnf module list php
Last metadata expiration check: 0:01:27 ago on Tue 10 Oct 2023 03:32:04 AM UTC.
Rocky Linux 8 - AppStream
Name Stream Profiles Summary
php 7.2 [d][e] common [d] [i], devel, minimal PHP scripting language
php 7.3 common [d], devel, minimal PHP scripting language
php 7.4 common [d], devel, minimal PHP scripting language
php 8.0 common [d], devel, minimal PHP scripting language
Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled
Reset default PHP module.
sudo dnf module reset php -y
Ensure PHP is installed in your local system. We’ll install 8.0
sudo dnf install @php:8.0 -y
Confirm installation of PHP.
$ php -version
PHP 8.0.27 (cli) (built: Jan 3 2023 16:17:26) ( NTS gcc x86_64 )
Copyright (c) The PHP Group
Zend Engine v4.0.27, Copyright (c) Zend Technologies
We have a complete guide on the installation of PHP on CentOS 8.
Step 2: Download Composer installer
Next is to download the Composer installer locally.
sudo dnf -y install wget
wget https://getcomposer.org/installer -O composer-installer.php
Step 3: Install PHP Composer
Once the installer is downloaded, we can install composer in our machine using the command below.
sudo php composer-installer.php --filename=composer --install-dir=/usr/local/bin
The installation will give you an output similar to below.
All settings correct for using Composer
Downloading...
Composer (version 2.6.5) successfully installed to: /usr/local/bin/composer
Use it: php /usr/local/bin/composer
Verify your installation of Composer on CentOS 8 / RHEL 8.
$ composer --version
Composer version 2.6.5 2023-10-06 10:11:52
To check the usage page, use:
$ composer
______
/ ____/___ ____ ___ ____ ____ ________ _____
/ / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
/_/
Composer version 2.6.5 2023-10-06 10:11:52
Usage:
command [options] [arguments]
Options:
-h, --help Display help for the given command. When no command is given display help for the list command
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi|--no-ansi Force (or disable --no-ansi) ANSI output
-n, --no-interaction Do not ask any interactive question
--profile Display timing and memory usage information
--no-plugins Whether to disable plugins.
--no-scripts Skips the execution of all scripts defined in composer.json file.
-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
audit Checks for security vulnerability advisories for installed packages
browse [home] Opens the package's repository URL or homepage in your browser
bump Increases the lower limit of your composer.json requirements to the currently installed versions
check-platform-reqs Check that platform requirements are satisfied
clear-cache [clearcache|cc] Clears composer's internal package cache
completion Dump the shell completion script
config Sets config options
create-project Creates new project from a package into given directory
depends [why] Shows which packages cause the given package to be installed
diagnose Diagnoses the system to identify common errors
dump-autoload [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 Display help for a command
init Creates a basic composer.json file in current directory
install [i] 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 List commands
outdated Shows a list of installed packages that have updates available, including their latest version
prohibits [why-not] Shows which packages prevent the given package from being installed
reinstall Uninstalls and reinstalls the given package names
remove [rm] Removes a package from the require or require-dev
require [r] Adds required packages to your composer.json and installs them
run-script [run] Runs the scripts defined in composer.json
search Searches for packages
self-update [selfupdate] Updates composer.phar to the latest version
show [info] Shows information about packages
status Shows a list of locally modified packages
suggests Shows package suggestions
update [u|upgrade] 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
Recommended Web Development books to read:
- Best Books to learn Web Development – PHP, HTML, CSS, JavaScript and jQuery
- Best Books To Master Web Design
- Best Books To Learn CSS & CSS3
- Best Books To Learn HTML & HTML5
- Best Apache and Nginx reference Books
Conclusion
In this post, we have successfully installed Composer on CentOS 8 Linux machine. Visit the official Composer documentation page to learn more about composer and how you can use it in your projects.
Check other guides: