> Colecciones > Herramientas para entornos de desarrollo dockerizados en Laravel

Colección de Herramientas para entornos de desarrollo dockerizados en Laravel

El desarrollo en Laravel permite usar diversos tipos de entornos de desarrollo, desde el comando php artisan serve (que sería lo más sencillo), hasta virtualizaciones completas con software del estilo de Virtualhost con el paquete oficial Homestead.

Sin embargo, existen algunas situaciones que a veces tenemos que solventar y por las que no todos los entornos de desarrollo son viables para trabajar con todos los proyectos, básicamente por los siguientes motivos.

Configurar un entorno con Docker nos ofrece una facilidad enorme para conseguir entornos a medida, con las versiones de PHP necesarias o la base de datos que quieras, entre otros servicios. Además, todo ello lo consigues sin poluir tu sistema host, que lo puedes dejar limpio, ya que todos los servicios y herramientas los puedes instalar en contenedores Docker.

Laravel Sail

La solución más directa sería usar Laravel Sail, que es el sistema oficial para desarrollar aplicaciones Laravel basadas en contenedores.

Sail nos ofrece una enorme facilidad para la creación de los entornos de desarrollo, ya sea para proyectos nuevos o para aplicaciones Laravel ya existentes.

Tenemos una guía completa para aprender a trabajar con Sail en proyectos Laravel.

Comentarios: (0)

Laradock

Laradock

Es un creador de entornos de desarrollo basados en Docker que funcionan sobre PHP. Es un software extremadamente configurable y con UTI que te permiten trabajar con distintas versiones de PHP, distintos tipos de bases de datos, programas de gestión de colas y más.

Con Laradock conseguirás en pocos minutos crear los contenedores Docker para muchas tecnologías comunes necesarias en proyectos PHP, incluyendo por supuesto Laravel.

El sistema está fuertemente testeado por una enorme comunidad y utiliza siempre versiones oficiales de los contenedores, promoviendo la seguridad. Además si tienes conocimientos de Docker también puedes editar tú mismo los archivos docker-compose o Dockerfile.

https://laradock.io/

Comentarios: (0)

Lando

Lando

Es un software para crear entornos de desarrollo en tus máquinas o en la nube, automatizar el proceso de desarrollo y compartirlos con los equipos de trabajo.

No está asociado o restringido a Laravel. En realidad se trata de una herramienta Capaz de crear los entornos de desarrollo basados en distintas tecnologías frameworks o CMS. Para ofrecer toda la funcionalidad tiene una arquitectura basada en plugins mediante los cuales podemos escoger los distintos servicios o herramientas de desarrollo con las que queramos trabajar. Tiene plugins para WordPress, Drupal, Laravel, Symfony y mucho más.

Su comunidad tiene un fuerte crecimiento, en parte gracias a su versatilidad.

https://lando.dev/

Comentarios: (0)

Devilbox

Devilbox

Nuevamente estamos ante un sistema para crear entornos de desarrollo capaces de funcionar con muchos tipos de herramientas de desarrollo, utilizando contenedores Docker para la instalación de los servicios.

Los stack de tecnologías que ofrece son LAMP y MEAN. Soporta una amplia gama de servicios estándar necesarios para el desarrollo Laravel, como PHP, MySQL y PostgreSQL. Aunque como decimos podrías utilizarlo para desarrollar con cualquier tipo de framework o CMS.

Una de las ventajas que nos anuncian es que puedes crear cualquier número de proyectos en un despliegue y además utilizar certificados SSL para poder trabajar con https también durante la etapa de desarrollo.

Puedes seleccionar prácticamente cualquier versión de PHP, desde las 5 hasta la 8, así como cantidad de versiones de otros servicios como Redis, mySQL, MariaDB, postgreSQL, etc.

Los usuarios que tienes son bastante amplios aunque las últimas versiones publicadas tienen algún tiempo.

http://devilbox.org/

Comentarios: (0)

Docker Compose

Por supuesto si tenemos mano y experiencia con Docker, podemos utilizar la herramienta Docker Compose, que sería la oficial ofrecida por la comunidad de Docker.

Gracias a Docker Compose podemos definir y ejecutar aplicaciones Docker multi-contenedor. Simplemente necesitas un archivo docker-compose.yml para definir los servicios, redes y volúmenes necesarios para tu aplicación Laravel. Esto te permite tener un entorno de desarrollo replicable y fácil de configurar.

El problema es que requiere experiencia con Docker. Por ello existen otras herramientas que nos permiten saltarnos estos requisitos de conocimientos y facilitarnos la vida ofreciéndonos recetas ya listas para usar.

Comentarios: (0)

Vessel

Es básicamente un script bash que nos permite en pocos instantes crear un entorno de desarrollo para Laravel basdao en Docker.

Se trata de un proyecto personal que ha sido liberado por su creador para que cualquier persona lo pueda usar. Desde su creación ha ganado cierta popularidad en GitHub, aunque no tanto como otras soluciones.

Esta solución está pensada para que sea ligera y muy fácil de usar. el problema que tiene es que ofrece solamente un stack de herramientas básico conversiones predefinidas que no vas a poder cambiar a no ser que tú mismo manipules los archivos generados para crear los contenedores.

https://github.com/shipping-docker/vessel

Comentarios: (0)