Cómo Configurar WordPress con Docker en Minutos

En este tutorial te mostraré cómo crear un entorno de pruebas para WordPress utilizando Docker y Docker Compose. En pocos pasos, tendrás WordPress, MySQL y PhpMyAdmin funcionando, ideal para desarrollo o pruebas rápidas. ¡Comienza a trabajar de manera eficiente y optimiza tu flujo de trabajo!

¿Por qué usar WordPress desde Docker?

Usar Docker para WordPress es una solución rápida, flexible y eficiente para configurar entornos de desarrollo y pruebas sin complicaciones.

  • Configuración rápida y sencilla del entorno en minutos.
  • Aislamiento de entornos para evitar conflictos entre proyectos.
  • Limpieza y reinicio fáciles con un solo comando (docker-compose down).
  • Portabilidad del entorno gracias al archivo docker-compose.yml.
  • Personalización completa de WordPress, MySQL y PhpMyAdmin.
  • Ideal para probar plugins, temas y configuraciones de forma segura.
  • Reducción de problemas al compartir el mismo entorno con un equipo.
  • Evita instalar servicios adicionales directamente en tu máquina local.

Codigo de Docker Compose

mkdir wp-project && cd wp-project
touch docker-compose.yml 

con la siguiente configuración:

version: '3.9'

services:
  # MYSQL Database
  database:
    image: mysql:8.0
    volumes: 
      - db_data:/var/lib/mysql
    restart: always
    command: --default-authentication-plugin=mysql_native_password
    environment: 
      MYSQL_ROOT_PASSWORD: password
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress
    networks: 
      - wpsite
  # WORDPRESS
  wordpress:
    depends_on:
      - database 
    image: wordpress:latest
    ports: 
      - '8000:80'
    restart: always
    volumes: 
      - './:/var/www/html'
      - ./uploads.ini:/usr/local/etc/php/conf.d/uploads.ini 
    environment: 
      WORDPRESS_DB_HOST: database:3306
      WORDPRESS_DB_USER: wordpress
      WORDPRESS_DB_PASSWORD: wordpress
    networks: 
      - wpsite
  # PHPMYADMIN
  phpmyadmin:
    depends_on: 
      - database
    image: phpmyadmin/phpmyadmin
    restart: always
    ports: 
      - '8080:80'
    environment: 
      PMA_HOST: database
      MYSQL_ROOT_PASSWORD: password
    networks:
      - wpsite
        
networks:
  wpsite:
volumes:
  db_data:

Comandos a ejecutar de Docker Compose

docker-compose up

Inicia los servicios definidos en el archivo docker-compose.yml, mostrando los logs en tiempo real.

docker-compose up -d

Inicia los servicios en segundo plano, permitiendo usar la terminal mientras los contenedores se ejecutan.

docker-compose down

Detiene y elimina los servicios, redes y volúmenes creados por Docker Compose.

Enlaces