Cómo instalar PHP Composer en Rocky Linux 8
PHP Composer es el gestor de dependencias más utilizado para PHP. Te permite declarar las dependencias que necesita tu proyecto, y las gestionará (instalar/actualizar) por ti.
Descargar, instalar y actualizar las dependencias puede ser una molestia y puede distraerte de escribir el código. Un gestor de dependencias te facilitará la vida como desarrollador al gestionar eso por ti.
Antes de que existiera Composer, había algunas opciones diferentes para gestionar las dependencias del proyecto, como PEAR y PHP Package Manager. Hoy en día, Composer se ha convertido en el estándar de facto para la gestión de dependencias en PHP.
Si todavía utilizas PEAR o el Gestor de Paquetes de PHP, puede que haya llegado el momento de cambiar. Hay varias razones para utilizar Composer:
- Está escrito en PHP y no requiere la instalación de software adicional (como Python)
- Soporta paquetes globales y locales/privados
- Miles de bibliotecas y aplicaciones ya confían en él, por lo que al utilizar Composer, podrás encontrar fácilmente paquetes y actualizaciones.
Requisitos previos
Para instalar PHP Composer en Rocky Linux 8.4, necesitarás
- Tener instalada la versión 5.3 o posterior de PHP en tu sistema (y debe poder ejecutar la extensión Phar).
- Es necesario tener acceso a la raíz para la instalación.
Actualizar el sistema
Antes de hacer nada, asegúrate de que los paquetes de tu sistema están actualizados. Ejecuta los siguientes comandos para actualizar los paquetes del sistema.
sudo dnf check-update
sudo dnf update -y
Instalación de PHP en Rocky Linux 8.4
Antes de poder instalar Composer, necesitas tener instalado PHP y el intérprete de PHP en tu sistema.
Por defecto, el repositorio de AppStream viene con PHP 7.2, 7.3 y 7.4. Puedes listar todas las versiones de PHP disponibles ejecutando el siguiente comando.
sudo dnf module list php
Verás una salida como la siguiente.
En esta guía, instalaremos PHP 7.4. Debes elegir la versión de PHP que se adapte a tus necesidades, aunque asegúrate de basar tu decisión no sólo en esta guía, sino también en informes de compatibilidad como éste.
Ejecuta los siguientes comandos para activar e instalar PHP 7.4.
sudo dnf module enable php:7.4
sudo dnf install php php-cli php-gd php-curl php-zip -y
sudo dnf install php-mbstring php-opcache php-intl php-mysqlnd -y
Ahora puedes comprobar si PHP se ha instalado correctamente ejecutando este comando.
php -v
Deberías obtener la siguiente salida.
Instalación de PHP Composer en Rocky Linux 8.4
Ahora que tienes una versión de PHP instalada en tu sistema, puedes utilizarla para descargar e instalar el binario de Composer.
Primero, ejecuta los siguientes comandos para descargar la última versión de Composer.
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
A continuación, comprobaremos que el archivo descargado no está corrupto. Siempre debemos verificar el archivo descargado para asegurarnos de que no está corrupto. Composer puede ser muy sensible, y los errores podrían causar problemas en el uso de Composer. Ejecuta el siguiente código para verificar que el archivo del instalador no está corrupto.
HASH=`curl -sS https://composer.github.io/installer.sig`
echo $HASH
php -r "if (hash_file('SHA384', '/tmp/composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
Deberías ver el texto «Instalador verificado» cuando la verificación tenga éxito, como se muestra a continuación. Si no obtienes el resultado esperado, lo más probable es que el archivo esté dañado y debas intentar descargarlo de nuevo. Entonces, repite el proceso de verificación hasta que obtengas la salida esperada «Instalador verificado».
Ahora tienes dos opciones para instalar Composer en tu sistema.
La opción 1 es instalar Composer de forma global en tu sistema, lo que significa que será accesible desde cualquier directorio de tu sistema y se podrá utilizar en cualquier lugar. Utiliza esta opción si quieres utilizar Composer como una herramienta de línea de comandos, y no sólo como un gestor de dependencias para tus proyectos PHP.
Si eliges esta opción, ejecuta los siguientes comandos.
sudo php composer-installer.php --filename=composer --install-dir=/usr/local/bin
El comando anterior instalará Composer globalmente con el comando llamado composer en /usr/local/bin.
Ahora puedes comprobar si has instalado Composer correctamente ejecutando este comando.
composer
Deberías obtener el siguiente resultado.
La opción 2 es instalar Composer localmente en el directorio actual para que sea utilizado sólo por este proyecto específico.
Para instalar Composer localmente, ejecuta los siguientes comandos.
sudo php composer-setup.php
El comando anterior instalará Composer localmente en el directorio actual para que sea utilizado sólo por este proyecto específico. Puedes utilizar el compositor ejecutando ./composer.phar <command>.
Probando PHP Composer
Ahora que has instalado Composer, puedes utilizarlo para crear un nuevo proyecto en el que puedas probar tu instalación de Composer.
Es una regla general que siempre debes crear un directorio distinto para cada proyecto en el que trabajes. Ejecuta los siguientes comandos para crear un nuevo directorio para tu proyecto de prueba y navega al directorio recién creado.
cd && mkdir php-composer-test && cd php-composer-test
Ahora puedes ejecutar el siguiente comando para inicializar un nuevo proyecto con Composer.
composer init
El comando anterior inicializará un nuevo proyecto con todos los detalles que hayas seleccionado.
El comando composer init también crea un nuevo archivo composer.json en el directorio actual, como se muestra a continuación. Es un archivo con formato JSON que contiene todos los requisitos del proyecto. Composer utiliza este archivo para instalar las dependencias necesarias para tu proyecto.
Ahora es el momento de cargar un paquete en tu proyecto. Dirígete a https://packagist.org y busca un paquete para instalarlo en tu proyecto.
Por ejemplo, si quieres instalar el paquete Eliminar palabras de parada, que puede ayudarnos a eliminar las palabras de parada de una cadena. Si buscas el término «Remove Stop Words» en Packagist, deberías ver el siguiente resultado.
Para añadir un nuevo paquete, ejecuta el comando composer require y selecciona el paquete (sin ninguna versión) que quieras cargar en tu proyecto actual.
composer require rap2hpoutre/remove-stop-words
Composer decidirá automáticamente qué versión del paquete debe utilizar. Composer descargará el paquete desde Packagist a tu directorio actual y extraerá el contenido de este paquete.
También actualizará el archivo composer.json con los detalles de este nuevo paquete. También creará un nuevo archivo, composer.lock, y un nuevo directorio de proveedores, como se muestra a continuación.
El archivo composer.lock es utilizado por Composer para bloquear la versión del paquete que está instalada en tu proyecto actual. Este archivo se utiliza para evitar conflictos con otras instalaciones del mismo paquete, o cuando clonas tu proyecto. El directorio de proveedores contiene todas las dependencias de tu proyecto.
Para actualizar las dependencias del proyecto, ejecuta el comando composer update. Composer mirará primero el archivo composer.lock para saber qué versión del paquete ya está instalada, y luego actualizará este paquete con la última versión disponible en Packagist.
composer update
Ejemplo de salida:
Para actualizar paquetes específicos, ejecuta el siguiente comando.
composer update vendor/package
Para eliminar un paquete concreto, ejecuta el siguiente comando.
composer remove vendor/package
Por ejemplo, si ya no necesitas el paquete Eliminar palabras de parada, puedes ejecutar el siguiente comando para desinstalarlo de tu proyecto.
composer remove rap2hpoutre/remove-stop-words
Ejemplo de salida:
Nota: Se recomienda encarecidamente que no elimines el directorio vendor ni su contenido, ya que este directorio contiene todas las dependencias que deben instalarse con Composer para poder ejecutar tu aplicación.
Conclusión
En este artículo has aprendido a instalar el gestor de dependencias PHP Composer en Rocky Linux 8.4 para inicializar un nuevo proyecto, cargar nuevos paquetes, actualizar los existentes o desinstalarlos de tu proyecto. También has aprendido algunos comandos básicos de Composer que se utilizan para gestionar las dependencias de tu proyecto.
Deja un comentario abajo si tienes alguna pregunta o comentario.