Configurar PHP, MySQL y Apache manualmente es lento y propenso a errores. En 2026, los ninjas del código usan Docker para tener su entorno listo en un solo comando.
Solución Rápida (Code Snippet)
Crea un archivo llamado docker-compose.yml en la raíz de tu proyecto y pega esto:
version: '3.8'
services:
web:
image: php:8.3-apache
volumes:
- .:/var/www/html
ports:
- "8080:80"
db:
image: mysql:8.0
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: mi_proyecto
ports:
- "3306:3306"
Luego, corre este comando en tu terminal:
docker-compose up -d
Cómo funciona
- Imágenes: Docker descarga “fotos” pre-configuradas de PHP y MySQL. No tienes que instalar nada en tu sistema operativo.
- Volumes: El código que escribes en tu PC se sincroniza automáticamente dentro del contenedor en
/var/www/html. - Ports: Mapeamos el puerto
8080de tu PC al puerto80del contenedor. Así, entras alocalhost:8080para ver tu sitio. - Aislamiento: Cada proyecto puede tener su propia versión de PHP (ej. uno con 7.4 y otro con 8.3) sin conflictos.
Ventajas Clave
- Portabilidad: Si formateas tu PC, solo instalas Docker y listo.
- Limpieza: No ensucias tu sistema operativo con servicios de bases de datos corriendo en segundo plano.
Enlaces Internos
- Aprende a conectar tu código de Docker con una Conexión PDO Singleton.
- Prepara tu app para el Despliegue en un VPS.
Preguntas Frecuentes
¿Dónde guardo los datos de MySQL?
Para que no se borren al apagar Docker, debes usar un volume para la carpeta /var/lib/mysql.
¿Puedo añadir phpMyAdmin?
Sí, solo añade un tercer servicio en el archivo YAML usando la imagen phpmyadmin/phpmyadmin.