¡Hola a todos! Hoy seguimos avanzando en nuestro curso sobre cómo montar un WordPress en tu propio servidor. En esta entrega, vamos a instalar dos piezas clave para que todo funcione como debe: MariaDB, la base de datos relacional que almacena toda la información de tu sitio, y PHPMyAdmin, una interfaz web que hace que gestionar esa base de datos sea tan sencillo como hacer clic en un botón.
Además, utilizaremos Portainer, una herramienta gráfica para gestionar contenedores Docker, lo que hará el proceso mucho más amigable. ¿Listos? ¡Manos a la obra!
Paso 1: Crear una Red Dedicada para MariaDB
Antes de instalar MariaDB, necesitamos configurar una red específica para alojar nuestro contenedor. Docker nos ofrece tres tipos de redes por defecto:
- Bridge: La más común, ideal para contenedores que necesitan acceso a internet.
- Host: Aquí el contenedor comparte la IP del sistema anfitrión.
- None: Para contenedores que no requieren conexión.
En nuestro caso, crearemos una red de tipo bridge. Aunque podríamos hacerlo desde la línea de comandos, utilizaremos Portainer para simplificar las cosas:
- Ve a la sección “Networks” en Portainer.
- Crea una nueva red llamada MariadbNet.
- Selecciona el tipo “bridge” y deja que Docker gestione automáticamente las IPs.
¡Y listo! Ahora tenemos nuestra red configurada y lista para usar.
Paso 2: Instalar el Contenedor de MariaDB
Con la red creada, es hora de instalar MariaDB. Para ello, ejecutaremos el siguiente comando en la terminal:
docker run -d \
--name=Mariadb \
--network=MariadbNet \
--restart unless-stopped \
-e MARIADB_ROOT_PASSWORD=12345 \
-p 3306:3306 \
-v /volume2/Docker/Mariadb/mysql/:/var/lib/mysql \
-d mariadb:10.6
¿Qué significa cada parte del comando?
docker run -d
: Ejecuta el contenedor en segundo plano.--name Mariadb
: Asigna el nombre “mariadb” al contenedor.--network MariadbNet
: Conecta el contenedor a la red “MariadbNet”.--restart unless-stopped
: Configura el reinicio automático en caso de error.-e MYSQL_ROOT_PASSWORD=12345
: Define la contraseña del usuario root (¡cámbiala por algo más seguro!).-p 3306:3306
: Mapea el puerto 3306 del contenedor al mismo puerto en el host.-v /ruta/donde/guardar/datos:/var/lib/mysql
: Crea un volumen persistente para los datos.mariadb:10.6
: Especifica la imagen y versión de MariaDB.
Docker descargará e instalará la imagen si no está disponible localmente. En menos de un minuto deberías tener tu contenedor en marcha.
¿Cómo comprobar que todo funciona?
- Ve a “Containers” en Portainer y verifica que el contenedor “Mariadb” está en estado running.
- Revisa los logs del contenedor. Si ves algo como “MariaDB ready for connections”, ¡todo está listo!
Paso 3: Instalar PHPMyAdmin
Con MariaDB funcionando, ahora instalaremos PHPMyAdmin para gestionar nuestra base de datos desde el navegador. El comando es similar al anterior:
docker run -d \
--name=PhpMyAdmin \
--network=MariadbNet \
--restart unless-stopped \
-p 38002:80 \
-e PMA_HOST=Mariadb \
-e PMA_PORT=3306 \
phpmyadmin/phpmyadmin:latest
Desglose del comando:
--name PhpMyAdmin
: Nombre del contenedor.--network MariadbNet
: Lo conecta a la misma red que MariaDB.--restart unless-stopped
: Reinicio automático si algo falla.-p 38002:80
: Mapea el puerto 80 del contenedor al puerto 38002 del host (puedes usar otro si prefieres, a mí me gusta poner mis propios puertos, si no el sistema generara uno al azar que este disponible).-e PMA_HOST=mariadb
: Indica que PHPMyAdmin debe conectarse al contenedor “Mariadb”.phpmyadmin/phpmyadmin:latest
: Usa la última versión disponible.
La instalación puede tardar un par de minutos porque descarga varios componentes adicionales.
Verificación:
- Comprueba en Portainer que el contenedor “phpmyadmin” está corriendo.
- Revisa los logs por si hay errores.
Paso 4: Acceder a PHPMyAdmin
Para confirmar que todo funciona, abre tu navegador y ve a:
http://[tu_ip_del_servidor]:38002
Deberías ver la pantalla de inicio de sesión de PHPMyAdmin. Introduce las credenciales:
- Usuario: root
- Contraseña: (la que configuraste en MariaDB, en el ejemplo 12345).
Si todo está correcto, accederás a la interfaz principal, donde podrás crear bases de datos, usuarios y realizar tareas administrativas.
Conclusión
¡Enhorabuena! Ahora tienes MariaDB y PHPMyAdmin funcionando perfectamente gracias a Portainer. Con estas herramientas listas, estás preparado para dar el siguiente paso: crear tu base de datos e instalar WordPress.
Si has llegado hasta aquí sin problemas, ¡te mereces un café (o dos)! Nos vemos en la próxima guía donde configuraremos WordPress sobre esta sólida base. ¡Hasta pronto! 😊
Video
Recursos adicionales
Por si te has qyuedado con ganas de mas o mi explicacion no te gusta
Tutorial de ZonaGadget sobre cómo cambiar la base de datos de Home Assistant Core Docker a MariaDB Server e instalar PHPMyAdmin https://www.youtube.com/watch?v=i1x0tF3ej7E
Artículo de HackerNoon “MariaDB + Phpmyadmin + Docker: Ejecución de base de datos local” por Igor Fomin https://hackernoon.com/lang/es/mariadb-phpmyadmin-docker-ejecutando-base-de-datos-local-ok9q36ji
Video tutorial “Cómo instalar WordPress + MariaDB + phpMyAdmin con Docker compose” por José M. Labarta https://www.youtube.com/watch?v=SjibdU4C_rg
Video “Instalar WordPress + MySQL + phpMyAdmin en Docker” con instrucciones paso a paso https://www.youtube.com/watch?v=EwIVqaLGbB8
Video tutorial “Instalación de servidores Mysql y MariaDB con Portainer y Docker” de CursosDeDesarrollo https://www.youtube.com/watch?v=ULMX4hoD3Mw
Práctica 7 de José Juan Sánchez sobre creación de contenedores Docker con phpMyAdmin https://josejuansanchez.org/bd/practica-07/index.html