Los desarrolladores que usan máquinas Windows históricamente han enfrentado desafíos en lo que respecta al desarrollo de PHP debido a la compatibilidad de la plataforma con ciertas herramientas y marcos. Pero, ¿y si eres un chico de Windows? Con la introducción de Windows Subsystem for Linux 2 (WSL2), el desarrollo de PHP en Windows se ha vuelto más fluido y eficiente. En este artículo, exploraremos qué es WSL2, por qué es fácil de usar para el desarrollo de PHP y cómo configurar un proyecto de PHP con Laravel Sail en WSL2.
WSL2 es una capa de compatibilidad proporcionada por Microsoft que le permite ejecutar una distribución de Linux completa de forma nativa en su máquina con Windows. A diferencia de su predecesor, WSL2 utiliza una tecnología de virtualización ligera que proporciona un mejor rendimiento y compatibilidad con varias aplicaciones y herramientas de Linux. Permite a los desarrolladores aprovechar el poder de las herramientas y los entornos de Linux mientras trabajan dentro del ecosistema familiar de Windows. En palabras simples, solo tiene Ubuntu instalado y ejecutándose en su máquina con Windows.
Integración perfecta: con WSL2, puede ejecutar distribuciones de Linux como Ubuntu, Debian o CentOS directamente en su máquina con Windows. Esta integración garantiza que tenga acceso a la terminal de Linux y al administrador de paquetes, lo que le permite trabajar con PHP y sus herramientas asociadas sin esfuerzo.
Entorno compatible: WSL2 proporciona un entorno compatible para el desarrollo de PHP. Puede instalar PHP, Composer y otras dependencias necesarias tal como lo haría en un sistema Linux. Esto garantiza la coherencia en todos los entornos de desarrollo, lo que facilita la colaboración con otros desarrolladores que trabajan en Linux o macOS.
Capacidades de depuración mejoradas: WSL2 admite herramientas populares de depuración de PHP, como Xdebug, sin problemas. Los desarrolladores pueden aprovechar las potentes funciones de depuración directamente desde sus IDE de Windows mientras ejecutan código PHP dentro del entorno Linux. Esta integración garantiza una experiencia de depuración coherente y agiliza el proceso de resolución de problemas.
Ahora puede instalar todo lo que necesita para ejecutar WSL con un solo comando. Abra PowerShell o el símbolo del sistema de Windows en modo administrador haciendo clic con el botón derecho y seleccionando "Ejecutar como administrador", ingrese el comando wsl --install y luego reinicie su máquina.
wsl --install
Este comando habilitará las funciones necesarias para ejecutar WSL e instalar la distribución Ubuntu de Linux. Después de la instalación, simplemente puede abrir CMD y escribir wsl
, automáticamente iniciará Ubuntu y podrá ejecutar comandos de Linux.
sudo apt-get update
sudo apt-get install -y php8.1-cli php8.1-common php8.1-mysql php8.1-zip php8.1-gd php8.1-mbstring php8.1-curl php8.1-xml php8.1-bcmath
curl -sS https://getcomposer.org/installer -o composer-setup.php sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer
Eso es todo por la parte de instalación. Ahora puede desarrollar aplicaciones bajo su nuevo Ubuntu. Sin embargo, si trabaja con Laravel, me gustaría mostrarle la facilidad con la que puede implementar varios proyectos en su computadora usando Docker y Laravel Sail.
Laravel Sail es una interfaz de línea de comandos (CLI) liviana para Laravel que simplifica la configuración de entornos de desarrollo locales. Aprovecha Docker para crear un entorno unificado, portátil y coherente para los proyectos de Laravel. Sail agiliza el proceso de configuración, lo que le permite concentrarse en escribir código en lugar de lidiar con procedimientos de configuración complejos. La principal ventaja es que no necesita preocuparse por crear sus propios archivos docker-compose y trabajar con imágenes, Sail hará todo por usted. Así es como puede usar Sail para su proyecto:
composer global require laravel/installer
laravel new my-project cd my-project
php artisan sail:install
Creará docker-compose.yml que tendrá NGINX, MySQL, Redis y otras herramientas realmente útiles para el desarrollo.
./vendor/bin/sail up
¡Este comando activará los contenedores Docker y su aplicación estará activa!
Puede cambiar los puertos de su aplicación en el archivo .env; sin embargo, debería estar disponible con localhost:80 por defecto.
Gracias a WSL2 y Laravel Sail, el desarrollo de PHP en máquinas Windows se ha vuelto significativamente más fácil y accesible. WSL2 proporciona una integración perfecta de las distribuciones de Linux dentro del entorno de Windows, mientras que Laravel Sail simplifica la instalación y configuración de los entornos de desarrollo locales para los proyectos de Laravel. Siguiendo los pasos descritos en este artículo, puede aprovechar WSL2 y Laravel Sail para disfrutar de una cómoda experiencia de desarrollo de PHP en su máquina con Windows sin necesidad de cambiar a Ubuntu u otras distribuciones de Linux.