Dockerizar una aplicación Laravel en PHP puede parecer un desafío, pero con los pasos adecuados, el proceso se vuelve sencillo y accesible. En esta guía, te mostraré cómo hacerlo de manera efectiva, asegurando que tu aplicación esté lista para ser ejecutada en cualquier entorno sin complicaciones.
Docker es una plataforma de código abierto que permite construir, probar y desplegar aplicaciones en contenedores. Estos contenedores son entornos ligeros y aislados que contienen todo lo necesario para ejecutar tu aplicación, incluyendo el código, bibliotecas, configuraciones y dependencias. Utilizar Docker facilita la creación de entornos de desarrollo consistentes y simplifica el proceso de despliegue.
Antes de comenzar, asegúrate de tener instalado en tu máquina:
El primer paso es crear un archivo llamado Dockerfile
en la raíz de tu proyecto Laravel. Este archivo especifica cómo se construirá la imagen Docker para tu aplicación. Aquí tienes un ejemplo de un Dockerfile básico:
# Usar la imagen base de PHP con Apache
FROM php:8.0-apache
# Instalar las extensiones de PHP necesarias
RUN docker-php-ext-install pdo pdo_mysql
# Configurar el directorio de trabajo
WORKDIR /var/www/html
# Copiar el código de la aplicación al contenedor
COPY . .
# Instalar Composer
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
# Instalar las dependencias del proyecto
RUN composer install
# Exponer el puerto para el servidor web
EXPOSE 80
El siguiente paso es crear un archivo llamado docker-compose.yml
en la raíz de tu proyecto. Este archivo permite definir los servicios que tu aplicación necesitará, como la base de datos. Un ejemplo sencillo se ve así:
version: '3.8'
services:
app:
build:
context: .
dockerfile: Dockerfile
ports:
- "8080:80"
volumes:
- .:/var/www/html
networks:
- app-network
db:
image: mysql:5.7
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: laravel
networks:
- app-network
networks:
app-network:
driver: bridge
Ahora que tienes los archivos Dockerfile
y docker-compose.yml
, es momento de construir y ejecutar los contenedores. Abre una terminal y navega hasta la raíz de tu proyecto, luego ejecuta el siguiente comando:
docker-compose up -d
Este comando descargará las imágenes necesarias, creará los contenedores y los iniciará en segundo plano. La opción -d
significa "detached" (desprendido), permitiendo que los contenedores se ejecuten sin bloquear la terminal.
Una vez que tus contenedores estén en funcionamiento, puedes acceder a tu aplicación Laravel ingresando http://localhost:8080
en tu navegador. Si todo está correctamente configurado, deberías ver la página de bienvenida de Laravel.
Para detener los contenedores, puedes ejecutar:
docker-compose down
Este comando detiene y elimina los contenedores, pero conserva los datos de tu base de datos debido a la configuración de Docker.
Dockerizar tu aplicación Laravel en PHP es un proceso sencillo que trae numerosos beneficios para el desarrollo y despliegue. Con esta guía, podrás configurar tu entorno en poco tiempo y sin complicaciones.
Si te interesa seguir aprendiendo sobre más prácticas útiles en el mundo de la tecnología y desarrollo web, te invito a leer más noticias de este estilo en mi blog. ¡Tu próxima aventura en el mundo del desarrollo te espera!
Page loaded in 23.54 ms