¿Qué es Laravel Sail?
Sail es el entorno de desarrollo más reciente de Laravel que surge a partir de Laravel en la versión 8. y viene a equipararse con otras soluciones oficiales como Homestead para Windows y Valet para MacOS y esfuerzos comunitarios como Laragon (particularmente el que yo uso), Laradock y Vessel.
Laravel Sail se basa en Docker, una tecnología que aprovecha los contenedores para empaquetar aplicaciones para que puedan ejecutarse rápida y fácilmente en cualquier sistema operativo.
El futuro de Sail parece ser brillante, ya que la documentación de Laravel ya lo presenta como la forma preferida de instalar y ejecutar proyectos de Laravel localmente, un lugar que Homestead y Valet ocuparon durante años.
Instalar Laravel Sail
Laravel Sail agrega soporte para elegir qué servicios le gustaría instalar
Laravel Sail, una CLI liviana para interactuar con el entorno docker predeterminado de Laravel, lanzó recientemente una nueva actualización que le permite elegir qué servicios deben configurarse en el archivo docker-compose.yml de su proyecto. Algunas de las opciones incluyen MySQL, PostgresSQL, Redis, Memcached, Meilisearch, Selenium y Mailhog.
Un nuevo parámetro en el comando del instalador determina qué servicios debe incluir Laravel Sail. Por ejemplo:
curl -s "https://laravel.build/example-app?with=mysql,redis" | bash
Si no pasa la opción with, Sail configurará la pila predeterminada de MySQL, Redis, Meilisearch, Mailhog y Selenium, y esta nueva configuración le brinda un control más detallado.
Enlace referencial: https://laravel-news.com/laravel-sail-services
Sobre Laravel Sail
Laravel Sail es un paquete que se instala mediante composer que ofrece una interfaz de línea de comandos; Sail, es otro de los entornos que tenemos a nuestra disposición para poder levantar o servir un proyecto en Laravel; utiliza Docker para ejecutar la aplicación pero ofrece una abstracción a los procesos de configuración de Docker que tendríamos que hacer manual si queremos usar esta herramienta como entorno de desarrollo en Laravel, por lo tanto, todo el proceso de configuración lo hace Sail por nosotros.
Sail permite configurar todo el proyecto sin necesidad de tener instalado practicamente nada a nivel del sistema operativo, salvo Docker y puede que PHP, todo lo demas, es decir, servidor, base de datos y demás dependencias, se instala en Docker; para poder usar Sail puedes hacerlo sin problemas en Linux o Mac, en el caso de Windows, debes de activar y configurar el subsistema de Linux.
Sail es uno de mis servicios favoritos y lo uso en MacOS para desarrollar mis proyectos ademas de los proyectos de mis libros y cursos que desarrollo en dicho sistema operativo, es muy liviano y facil de utilizar, no ofrece problemas en general y lo único que debes de tener en cuenta es apagar cualquier proceso que tengas en los puertos ocupados por Sail al levantar el servicio, que sería, el puerto 80 para el servidor o el 3306, estos puertos tambien los puedes cambiar para cada proyecto en Laravel con Sail o simplemente apagas otros servicios que tengas instalado a nivel del sistema operativo.
- Andrés Cruz
Desarrollo con Laravel, Django, Flask, CodeIgniter, HTML5, CSS3, MySQL, JavaScript, Vue, Android, iOS, Flutter