Contenga sus datos: ejecute MariaDB con Docker

Publicado: 2022-10-25

MariaDB es un servidor de base de datos gratuito que proporciona acceso a datos mediante un lenguaje de consulta estructurado (SQL). Ofrece funciones de seguridad como contraseñas, control de acceso basado en roles y mucho más para proteger sus datos.

Para implementar MariaDB y otorgar acceso a los datos a sus usuarios, debe alojar el servidor de la base de datos. Puede optar por un proveedor de nube o utilizar servicios de alojamiento administrado o compartido.

Este artículo le enseñará cómo ejecutar MariaDB utilizando un contenedor Docker, configurar y ejecutar el servidor de la base de datos y conectarlo a un sitio web de WordPress.

¿Qué es Docker?

Docker es una herramienta de desarrollo gratuita que le permite ejecutar aplicaciones en un entorno controlado llamado contenedor. Los contenedores tienen código de aplicación, dependencias y herramientas críticas del sistema para ejecutar su aplicación. Esto le permite entregar aplicaciones sólidas durante todo el ciclo de vida del desarrollo de software.

Por lo general, los contenedores usan su sistema operativo como host. Esto significa que el kernel de la máquina host brinda acceso a recursos como CPU, memoria y el sistema de archivos. Como resultado, esto no requiere la virtualización tradicional como las máquinas virtuales. Hay varias ventajas de usar Docker para ejecutar una instancia de MariaDB:

  • Tiene una pequeña huella digital, lo que garantiza un uso eficiente de los recursos del sistema.
  • Es consistente, lo que permite a los desarrolladores ejecutar aplicaciones en producción y probar implementaciones con cambios mínimos.
  • Proporciona un mecanismo flexible para compartir recursos.
  • Es escalable: puede ejecutar muchos contenedores en un solo host.

Cómo implementar MariaDB con Docker

En esta sección, creará entornos en contenedores para ejecutar MariaDB mediante Docker. Aprenderá sobre la tecnología de contenedores que ofrece Docker. Docker funciona en la mayoría de las versiones de las distribuciones de Windows, macOS y Linux. Para este tutorial, deberá tener Windows 10/11, Ubuntu 20.04 o una máquina macOS X para poder seguirlo.

1. Instalar ventana acoplable

Una de las mejores características de Docker es su portabilidad. Utiliza el sistema operativo del host, lo que lo hace ideal para entornos de prueba y publicación. Esta sección le enseñará cómo instalar Docker en los tres sistemas operativos.

Ubuntu 20.04

Primero, actualice la lista de paquetes de Ubuntu.

 sudo apt-get update

Luego, permita el acceso a los repositorios en línea a través de HTTPS.

 sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common

Instalando docker a través de la terminal.
A continuación, agregue la clave GPG de Docker.

 sudo mkdir -p /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

Ahora, agregue el repositorio de Docker.

 echo deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Luego, actualice los paquetes de Ubuntu para incluir el repositorio de Docker.

 sudo apt-get update

Finalmente, instale Docker Engine.

 sudo apt-get install docker-ce

Si usa una distribución de Linux diferente, como Debian o Fedora, siga la documentación oficial para instalar Docker en Linux.

ventanas 10/11

Docker está disponible en Windows 10 u 11 con Windows Subsystem for Linux versión 2 (WSL 2) como back-end. Utilice los siguientes pasos para instalar Docker.

Primero, habilite la función Plataforma de máquina virtual en su sistema Windows. Esto le permite instalar WSL 2 e instalar y ejecutar una instancia de Linux virtualizada en su máquina con Windows.

A continuación, instale WSL.

Luego, visite Microsoft Store para descargar Ubuntu 20.04.

Finalmente, descargue Docker Desktop para Windows. Abra el archivo descargado para iniciar el proceso de instalación.

Después de la instalación, busque "Docker Desktop" en su barra de tareas y ábralo.

( Nota: deberá usar PowerShell como su terminal para usar los comandos de Docker).

Mac OS X

Docker está disponible en máquinas macOS a través de Apple App Store. Hay dos instaladores disponibles que apuntan a chips Intel y Apple.

Primero, descargue el instalador apropiado de uno de los enlaces anteriores. Luego, haga doble clic para abrir el archivo .dmg descargado.

A continuación, arrastre y suelte el icono de Docker en la carpeta Aplicaciones .

Ahora, abra la aplicación Docker desde la carpeta Aplicaciones y siga las indicaciones para completar la configuración.

Una vez que se complete el proceso de instalación, haga doble clic en el icono de Docker en la barra de estado de su escritorio para abrirlo.

Utilice el terminal predeterminado para ejecutar los comandos de Docker.

2. Descarga una imagen de MariaDB

Una imagen de Docker proporciona una colección de comandos y configuraciones para crear un contenedor de Docker. Es responsable de instalar todo lo necesario para ejecutar una aplicación. Puede encontrar la imagen oficial de MariaDB en Docker Hub.

Para descargar la imagen de MariaDB desde Docker Hub, deberá usar el comando docker pull :

 docker pull mariadb

También puede ver una lista de imágenes de Docker descargadas ejecutando lo siguiente:

 docker images

Esta es la salida del comando:

Listado de imágenes de Docker.
Listado de imágenes de Docker.

3. Crea un Contenedor

Un contenedor es una unidad de software con todo el código, las dependencias y las herramientas del sistema necesarias para ejecutar un proceso o programa. Utilizará la imagen descargada antes para crear un contenedor MariaDB.

 docker create mariadb --name mariadb-wp -i –t

Esto crea un contenedor MariaDB llamado mariadb-wp . El indicador –i permite una sesión interactiva y la opción –t crea una pseudoterminal. La documentación oficial proporciona información sobre todas las variables disponibles.

4. Ejecutar, pausar y detener el contenedor

Docker brinda a los desarrolladores la flexibilidad de los entornos configurables. En esta sección, configuraremos el contenedor de MariaDB con variables de entorno para establecer propiedades específicas del sistema para su contenedor.

MariaDB tiene muchas variables que puede configurar, como nombres de bases de datos, contraseñas y usuarios de bases de datos. Para obtener una lista más amplia de las variables de entorno admitidas, consulte la documentación de Docker para MariaDB.

 docker run -d --name mariadb-wp -p 3306:3306 -v '/path/on/host/:/var/lib/mysql' -e "MARIADB_ROOT_PASSWORD=" -e "MARIADB_DATABASE=wordpress" -e "MARIADB_USER=wordpress" -e "MARIADB_PASSWORD=" mariadb

El comando anterior configura la contraseña raíz, el usuario de la base de datos y la contraseña asociada de MariaDB. Luego ejecuta MariaDB en el puerto 3306. Puede decidir pausar la ejecución de la aplicación de un contenedor con el siguiente comando:

 docker pause mariadb-wp

Finalmente, también puede detener una aplicación que se ejecuta dentro de un contenedor usando el siguiente comando:

 docker stop mariadb-wp

5. Conecte MariaDB en contenedores a un sitio de WordPress

Ahora, necesitamos conectar MariaDB a un sitio web externo de WordPress. Puede obtener más información sobre cómo crear un sitio web de WordPress localmente aquí.

En el directorio raíz del sitio web de WordPress, abra el archivo wp-config.php en su editor de código. Localice la sección de código que define las variables para la base de datos y edítela, como se muestra a continuación. Asegúrese de utilizar el nombre de la base de datos, la contraseña y el número de puerto al crear el contenedor de MariaDB.

 define('DB_NAME', 'wordpress'); define('DB_USER', 'wordpress'); define('DB_PASSWORD', ''); define('DB_HOST', 'http://localhost:3306');

A continuación, debe importar un volcado de base de datos de su sitio web de WordPress en MariaDB en contenedores. Primero, asegúrese de haber exportado la base de datos actual para el sitio web. Para obtener más información, consulte nuestro tutorial de copia de seguridad de la base de datos MySQL.

Después de exportar su base de datos, instale el volcado de la base de datos dentro del contenedor.

 docker exec -i mariadb-wp sh -c 'exec mysql -u root -p "$MARIADB_ROOT_PASSWORD" < /some/path/on/your/host/all-databases.sql'

El comando docker exec permite a los desarrolladores ejecutar comandos de shell dentro del contenedor. Importamos una base de datos a MariaDB usando un archivo exportado en el comando anterior.

6. Agregue una nueva publicación a su sitio de WordPress

Crearemos una publicación de muestra usando la cuenta de administrador de WordPress para probar esta integración.

Primero, inicie sesión en WordPress y haga clic en Publicaciones > Agregar nuevo . Complete los detalles como se muestra a continuación, luego haga clic en Publicar . Después de crear la publicación, haga clic en Ver publicación para ver la publicación recién agregada.

Agregar una nueva publicación en el editor de WordPress Gutenberg.
Agregar una nueva publicación en el editor de WordPress.

¡Y eso es todo!

7. MariaDB y Docker con DevKinsta

La aplicación gratuita de Kinsta, DevKinsta, permite a los desarrolladores crear sitios de WordPress en contenedores de manera eficiente. La aplicación utiliza Docker para configurar versiones de PHP, servidores de bases de datos y servidores web. La aplicación DevKinsta admite desarrolladores que utilizan macOS, Windows y Ubuntu/Linux.

Para comenzar, descargue, instale y ejecute DevKinsta en su máquina local. La aplicación le ofrece tres opciones: crear un nuevo sitio de WordPress, importar uno existente de Kinsta o crear un sitio personalizado.

Nueva pantalla de creación de sitio nuevo de DevKinsta.
Nueva pantalla de creación de sitio nuevo de DevKinsta.

Crear un nuevo sitio de WordPress es tan fácil como completar un formulario simple y hacer clic en Crear sitio .

Nueva pantalla de creación de sitios de WordPress de DevKinsta.
Nueva pantalla de creación de sitios de WordPress de DevKinsta.

¡Felicitaciones, ahora ha creado un sitio web de WordPress en contenedores usando DevKinsta!

Resumen

Docker es una herramienta fácil de usar para desarrolladores para contener software que ejecuta servidores de bases de datos como MariaDB. Sus entornos minimalistas ayudan a mantener la eficiencia de los recursos del sistema sin sacrificar la funcionalidad.

Este tutorial le enseñó cómo instalar Docker, configurar MariaDB y conectar un sitio de WordPress con su base de datos MariaDB en contenedores. Además, aprendió a usar DevKinsta para crear un sitio web de WordPress completamente en contenedores.

Hay mucho más para explorar con la creación de sitios de WordPress y sus numerosas soluciones de alojamiento. Si está buscando descubrir qué tan fácil puede ser la administración de su sitio, el alojamiento administrado de WordPress de Kinsta lo tiene cubierto.