Contenez vos données : exécutez MariaDB avec Docker

Publié: 2022-10-25

MariaDB est un serveur de base de données gratuit qui fournit un accès aux données à l'aide d'un langage de requête structuré (SQL). Il offre des fonctionnalités de sécurité telles que les mots de passe, le contrôle d'accès basé sur les rôles et bien plus encore pour protéger vos données.

Pour déployer MariaDB et accorder l'accès aux données à vos utilisateurs, vous devez héberger le serveur de base de données. Vous pouvez opter pour un fournisseur de cloud ou utiliser des services d'hébergement gérés ou mutualisés.

Cet article vous apprendra à exécuter MariaDB à l'aide d'un conteneur Docker, à configurer et à exécuter le serveur de base de données et à le connecter à un site Web WordPress.

Qu'est-ce que Docker ?

Docker est un outil de développement gratuit qui vous permet d'exécuter des applications dans un environnement contrôlé appelé conteneur. Les conteneurs contiennent du code d'application, des dépendances et des outils système critiques pour l'exécution de votre application. Cela vous permet de fournir des applications robustes tout au long du cycle de vie du développement logiciel.

Généralement, les conteneurs utilisent votre système d'exploitation comme hôte. Cela signifie que le noyau de la machine hôte donne accès à des ressources telles que les processeurs, la mémoire et le système de fichiers. Par conséquent, cela ne nécessite pas de virtualisation traditionnelle comme les machines virtuelles. L'utilisation de Docker pour exécuter une instance MariaDB présente plusieurs avantages :

  • Il a une petite empreinte numérique, assurant une utilisation efficace des ressources système.
  • Il est cohérent, permettant aux développeurs d'exécuter des applications dans des déploiements de production et de test avec des modifications minimes.
  • Il fournit un mécanisme flexible pour le partage des ressources.
  • Il est évolutif : vous pouvez exécuter plusieurs conteneurs sur un seul hôte.

Comment déployer MariaDB avec Docker

Dans cette section, vous allez créer des environnements conteneurisés pour exécuter MariaDB à l'aide de Docker. Vous découvrirez la technologie de conteneur proposée par Docker. Docker fonctionne sur la plupart des versions des distributions Windows, macOS et Linux. Pour ce didacticiel, vous aurez besoin de Windows 10/11, d'Ubuntu 20.04 ou d'une machine macOS X pour suivre.

1. Installez Docker

L'une des meilleures caractéristiques de Docker est sa portabilité. Il utilise le système d'exploitation de l'hôte, ce qui le rend idéal pour les environnements de test et de publication. Cette section vous apprendra comment installer Docker sur les trois systèmes d'exploitation.

Ubuntu 20.04

Tout d'abord, mettez à jour la liste des packages d'Ubuntu.

 sudo apt-get update

Ensuite, autorisez l'accès aux référentiels en ligne via HTTPS.

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

Installation de docker via le terminal.
Ensuite, ajoutez la clé 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

Maintenant, ajoutez le référentiel 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

Ensuite, mettez à jour les packages d'Ubuntu pour inclure le référentiel de Docker.

 sudo apt-get update

Enfin, installez Docker Engine.

 sudo apt-get install docker-ce

Si vous utilisez une distribution Linux différente comme Debian ou Fedora, suivez la documentation officielle pour l'installation de Docker sous Linux.

Windows 10/11

Docker est disponible sur Windows 10 ou 11 en utilisant le sous-système Windows pour Linux version 2 (WSL 2) comme back-end. Utilisez les étapes suivantes pour installer Docker.

Tout d'abord, activez la fonctionnalité Virtual Machine Platform sur votre système Windows. Cela vous permet d'installer WSL 2 et d'installer et d'exécuter une instance Linux virtualisée sur votre machine Windows.

Ensuite, installez WSL.

Ensuite, visitez le Microsoft Store pour télécharger Ubuntu 20.04.

Enfin, téléchargez Docker Desktop pour Windows. Ouvrez le fichier téléchargé pour démarrer le processus d'installation.

Après l'installation, recherchez "Docker Desktop" dans votre barre des tâches et ouvrez-le.

( Remarque : vous devrez utiliser PowerShell comme terminal pour utiliser les commandes Docker.)

Mac OS X

Docker est disponible sur les machines macOS via l'App Store d'Apple. Il existe deux programmes d'installation disponibles qui ciblent à la fois les puces Intel et Apple.

Tout d'abord, téléchargez le programme d'installation approprié à partir de l'un des liens ci-dessus. Ensuite, double-cliquez pour ouvrir le fichier .dmg téléchargé.

Ensuite, faites glisser et déposez l'icône Docker dans le dossier Applications .

Maintenant, ouvrez l'application Docker à partir du dossier Applications et suivez les invites pour terminer la configuration.

Une fois le processus d'installation terminé, double-cliquez sur l'icône Docker dans la barre d'état de votre bureau pour l'ouvrir.

Utilisez le terminal par défaut pour exécuter les commandes Docker.

2. Téléchargez une image MariaDB

Une image Docker fournit une collection de commandes et de configurations pour créer un conteneur Docker. Il est responsable de l'installation de tout le nécessaire pour exécuter une application. Vous pouvez trouver l'image officielle de MariaDB sur Docker Hub.

Pour télécharger l'image de MariaDB depuis Docker Hub, vous devrez utiliser la commande docker pull :

 docker pull mariadb

Vous pouvez également afficher une liste des images Docker téléchargées en exécutant ce qui suit :

 docker images

Voici la sortie de la commande :

Liste des images Docker.
Liste des images Docker.

3. Créer un conteneur

Un conteneur est une unité logicielle avec tout le code, les dépendances et les outils système nécessaires pour exécuter un processus ou un programme. Vous utiliserez l'image téléchargée auparavant pour créer un conteneur MariaDB.

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

Cela crée un conteneur MariaDB appelé mariadb-wp . L'indicateur –i permet une session interactive et l'option –t crée un pseudo-terminal. La documentation officielle fournit des informations sur toutes les variables disponibles.

4. Exécuter, mettre en pause et arrêter le conteneur

Docker offre aux développeurs la flexibilité des environnements configurables. Dans cette section, nous allons configurer le conteneur de MariaDB avec des variables d'environnement pour configurer des propriétés système spécifiques pour votre conteneur.

MariaDB possède de nombreuses variables que vous pouvez définir, telles que les noms de base de données, les mots de passe et les utilisateurs de la base de données. Pour une liste plus complète des variables d'environnement prises en charge, reportez-vous à la documentation de Docker pour 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

La commande ci-dessus configure le mot de passe root de MariaDB, l'utilisateur de la base de données et le mot de passe associé. Il exécute ensuite MariaDB sur le port 3306. Vous pouvez décider de suspendre l'exécution de l'application d'un conteneur avec la commande suivante :

 docker pause mariadb-wp

Enfin, vous pouvez également arrêter une application en cours d'exécution à l'intérieur d'un conteneur en utilisant la commande suivante :

 docker stop mariadb-wp

5. Connectez la MariaDB conteneurisée à un site WordPress

Maintenant, nous devons connecter MariaDB à un site Web WordPress externe. Vous pouvez en savoir plus sur la création d'un site Web WordPress localement ici.

Dans le répertoire racine du site WordPress, ouvrez le fichier wp-config.php dans votre éditeur de code. Localisez la section de code qui définit les variables de la base de données et modifiez-la, comme indiqué ci-dessous. Assurez-vous d'utiliser le nom de la base de données, le mot de passe et le numéro de port lors de la création du conteneur MariaDB.

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

Ensuite, vous devez importer un vidage de base de données de votre site Web WordPress dans la MariaDB conteneurisée. Tout d'abord, assurez-vous d'avoir exporté la base de données actuelle pour le site Web. Pour en savoir plus, consultez notre tutoriel de sauvegarde de base de données MySQL.

Après avoir exporté votre base de données, installez le vidage de la base de données à l'intérieur du conteneur.

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

La commande docker exec permet aux développeurs d'exécuter des commandes shell à l'intérieur du conteneur. Nous avons importé une base de données dans MariaDB à l'aide d'un fichier exporté dans la commande ci-dessus.

6. Ajoutez un nouveau message à votre site WordPress

Nous allons créer un exemple de publication en utilisant le compte administrateur WordPress pour tester cette intégration.

Tout d'abord, connectez-vous à WordPress et cliquez sur Articles > Ajouter un nouveau . Remplissez les détails comme indiqué ci-dessous, puis cliquez sur Publier . Après avoir créé la publication, cliquez sur Afficher la publication pour afficher la publication nouvellement ajoutée.

Ajout d'un nouveau message dans l'éditeur WordPress Gutenberg.
Ajout d'un nouvel article dans l'éditeur WordPress.

Et c'est tout ce qu'il y a à faire !

7. MariaDB et Docker avec DevKinsta

L'application gratuite de Kinsta, DevKinsta, permet aux développeurs de créer efficacement des sites WordPress conteneurisés. L'application utilise Docker pour configurer les versions PHP, les serveurs de base de données et les serveurs Web. L'application DevKinsta prend en charge les développeurs utilisant macOS, Windows et Ubuntu/Linux.

Pour commencer, téléchargez, installez et lancez DevKinsta sur votre machine locale. L'application vous offre trois options : créer un nouveau site WordPress, importer un site existant de Kinsta ou créer un site personnalisé.

Le nouvel écran de création de nouveau site de DevKinsta.
Le nouvel écran de création de nouveau site de DevKinsta.

Créer un nouveau site WordPress est aussi simple que de remplir un simple formulaire et de cliquer sur Créer un site .

Le nouvel écran de création de site WordPress de DevKinsta.
Le nouvel écran de création de site WordPress de DevKinsta.

Félicitations — vous avez maintenant créé un site Web WordPress conteneurisé en utilisant DevKinsta !

Sommaire

Docker est un outil convivial pour les développeurs permettant de conteneuriser les logiciels qui exécutent des serveurs de base de données comme MariaDB. Ses environnements minimalistes aident à maintenir l'efficacité des ressources système sans sacrifier les fonctionnalités.

Ce didacticiel vous a appris à installer Docker, à configurer MariaDB et à connecter un site WordPress à votre base de données MariaDB conteneurisée. De plus, vous avez appris à utiliser DevKinsta pour créer un site Web WordPress entièrement conteneurisé.

Il y a beaucoup plus à explorer avec la création de site WordPress et ses nombreuses solutions d'hébergement. Si vous cherchez à découvrir à quel point la gestion de votre site peut être facile, l'hébergement WordPress infogéré de Kinsta est là pour vous.