Saltar al contenido principal

Ejemplo: MySQL y PHPMyAdmin con Docker

Este ejemplo muestra cómo ejecutar contenedores de MySQL y PHPMyAdmin que estén conectados entre sí para gestionar fácilmente una base de datos MySQL a través de una interfaz gráfica.

Pasos a Seguir:

  1. Iniciar el Contenedor de MySQL:

    Ejecuta el siguiente comando para iniciar un contenedor con MySQL:

    docker run --name=db -p 3306:3306 -e MYSQL_ROOT_PASSWORD=secret-pw -d mysql:8.1
    • --name=db: Asigna un nombre al contenedor (db en este caso).
    • -p 3306:3306: Mapea el puerto 3306 del contenedor al puerto 3306 de tu máquina local.
    • -e MYSQL_ROOT_PASSWORD=secret-pw: Establece la contraseña para el usuario root de MySQL.
    • -d: Ejecuta el contenedor en segundo plano (detached mode).
  2. Ver Logs del Contenedor MySQL:

    Puedes revisar los logs del contenedor MySQL para asegurarte de que se está ejecutando correctamente:

    docker logs db
  3. Conectarse al Contenedor MySQL:

    Para acceder al terminal del contenedor MySQL:

    docker exec -it db bash

    Una vez dentro del contenedor, puedes conectarte a MySQL:

    mysql -u root -p

    Introduce la contraseña que especificaste anteriormente (secret-pw).

  4. Salir del Contenedor:

    Para salir de la terminal interactiva de MySQL, escribe exit. Luego, para salir del contenedor sin detenerlo, presiona Ctrl+P y Ctrl+Q. Esto te devolverá a tu terminal local sin detener el contenedor.

  5. Iniciar el Contenedor de PHPMyAdmin:

    Ahora, inicia un contenedor de PHPMyAdmin y conéctalo al contenedor MySQL:

    docker run -d --name=my-admin -p 82:80 --link db:db phpmyadmin:5.2.1
    • --name=my-admin: Asigna un nombre al contenedor PHPMyAdmin.
    • -p 82:80: Mapea el puerto 80 del contenedor al puerto 82 de tu máquina local.
    • --link db:db: Conecta el contenedor PHPMyAdmin con el contenedor MySQL (db).
  6. Acceder a PHPMyAdmin:

    Abre tu navegador web y dirígete a http://localhost:82/. Introduce las credenciales de MySQL para acceder a la interfaz gráfica de PHPMyAdmin y gestionar la base de datos.

  7. Detener y Eliminar los Contenedores:

    Una vez que hayas terminado de usar los contenedores, es importante detenerlos y eliminarlos para liberar recursos:

    docker stop db my-admin
    docker rm db my-admin
    • docker stop: Detiene los contenedores especificados.
    • docker rm: Elimina los contenedores detenidos.

Notas:

  • Asegúrate de que los puertos que estás utilizando (3306 para MySQL y 82 para PHPMyAdmin) no estén en uso por otros servicios en tu máquina.
  • PHPMyAdmin es una herramienta útil para gestionar bases de datos MySQL sin necesidad de utilizar la línea de comandos, especialmente en entornos de desarrollo.