# Installer MariaDB via Docker : voici comment procéder

Docker est idéal pour le déploiement rapide de MariaDB. Vous téléchargez d’abord une image adaptée. Ensuite, vous configurez et démarrez le conteneur avec les paramètres souhaités. Ainsi, vous testez ou développez indépendamment du système hôte dans un environnement contrôlé.

## Avantages des environnements MariaDB Docker

[Docker](https://www.ionos.fr/digitalguide/serveur/know-how/quest-ce-que-docker/) offre une méthode simple pour déployer [MariaDB](https://www.ionos.fr/digitalguide/serveur/know-how/mariadb-cest-quoi/) dans des **environnements isolés**. Vous pouvez rapidement lancer des instances et tester différentes versions indépendamment. Cela vous permet de gagner du temps, d’éviter les conflits avec des installations locales et de créer des conditions reproductibles pour le développement et les tests.

## Prérequis

Avant de commencer, assurez-vous que les prérequis suivants sont remplis :

- Docker est installé et en cours d’exécution sur votre système
- Accès à une ligne de commande (Terminal, PowerShell, etc.) avec des droits admin
- Optionnel pour MariaDB : [Docker Compose](https://www.ionos.fr/digitalguide/serveur/configuration/tutoriel-docker-compose/), pour des configurations plus complexes

## Installation de MariaDB dans Docker : guide étape par étape

Découvrez ci-dessous comment installer MariaDB en quelques étapes dans Docker. La manière de configurer Docker en amont est détaillée dans notre [tutoriel Docker](https://www.ionos.fr/digitalguide/serveur/configuration/tutoriel-docker-installation-et-premiers-pas/).

### Étape 1 : installer Docker

Si vous n’avez pas encore installé Docker, vous pouvez le configurer via le **script d’installation** officiel :

```bash
curl -sSL https://get.docker.com/ | sh
```

Sous Windows ou macOS, il est recommandé d’utiliser **Docker Desktop**. Après une installation réussie, vérifiez son bon fonctionnement avec :

```bash
docker --version
```

La sortie devrait afficher un numéro de version, par exemple `Docker version 27.5.1, build cb74dfcd`. Si c’est le cas, vous avez correctement configuré Docker.

### Étape 2 : télécharger l’image MariaDB

Maintenant, téléchargez l’[image Docker MariaDB](https://hub.docker.com/_/mariadb "mariadb-Image sur Docker Hub") officielle depuis **Docker Hub**. Celle-ci contient une instance de MariaDB entièrement préconfigurée.

```bash
docker pull mariadb:latest
```

Si vous préférez une version spécifique, vous pouvez également la spécifier explicitement, par exemple :

```bash
docker pull mariadb:10.11
```

Vous pouvez ensuite vérifier toutes les images stockées localement avec la commande suivante :

```bash
docker images
```

La ligne avec `mariadb` et le tag correspondant devrait apparaître dans la liste.

### Étape 3 : démarrer le conteneur MariaDB dans Docker

Créez maintenant le conteneur. Pour cela, utilisez la commande :

```bash
docker run --name mariadb-container -e MYSQL_ROOT_PASSWORD=password -d -p 3306:3306 mariadb:latest
```

- `--name mariadb-container` : attribue un nom au conteneur, sous lequel il peut être référencé dans le système.
- `-e MYSQL_ROOT_PASSWORD=password` : définit le mot de passe root de la base de données MariaDB. Vous en aurez besoin plus tard pour vous connecter.
- `-d` : démarre le conteneur en arrière-plan (mode détaché), permettant ainsi de libérer votre console.
- `-p 3306:3306` : connecte le port par défaut de la base de données du conteneur au même port sur votre système local, afin que vous puissiez y accéder via des clients.

Après avoir exécuté cette commande, Docker devrait démarrer le conteneur. Pour en vérifier l’état, saisissez :

```bash
docker ps
```

Dans la liste des conteneurs en cours d’exécution, `mariadb-container` devrait apparaître avec le statut `Up`. Si le conteneur ne fonctionne pas comme prévu, vous pouvez consulter les fichiers *log* avec :

```bash
docker logs mariadb-container
```

Les logs permettent d’identifier d’éventuelles erreurs de configuration.

### Étape 4 : accéder à MariaDB

Dès que le conteneur MariaDB Docker fonctionne, vous pouvez accéder à la base de données avec un **client compatible MySQL** comme l’outil MySQL standard ou des outils graphiques comme DBeaver, HeidiSQL ou Beekeeper Studio.

Sur la ligne de commande, vous pouvez ainsi utiliser la commande suivante :

```bash
mysql -h 127.0.0.1 -P 3306 -u root -p
```

Vous serez invité à saisir le mot de passe. Entrez celui que vous avez défini avec `MYSQL_ROOT_PASSWORD`.

Si tout fonctionne, vous accéderez à la console MariaDB. Là, vous pouvez exécuter des **commandes SQL** comme d’habitude :

```sql
SHOW DATABASES;
```

Vous verrez les bases par défaut et pourrez créer vos propres bases ou tables.

### Étape 5 : sécuriser les données persistantes avec des volumes

Par défaut, les données dans le conteneur sont temporaires. Pour sécuriser vos données lors de redémarrages ou de changements de conteneur, il est recommandé d’utiliser un volume :

```bash
docker run --name mariadb-container -e MYSQL_ROOT_PASSWORD=password -d \
    -v mariadb_data:/var/lib/mysql \
    -p 3306:3306 mariadb:latest
```

`-v mariadb_data:/var/lib/mysql` crée un volume Docker nommé `mariadb_data` et le lie au répertoire où MariaDB stocke ses données.

Vous pouvez afficher les volumes stockés à tout moment avec la commande suivante :

```bash
docker volume ls
```

Avec la commande suivante, vous pouvez ensuite inspecter le contenu d’un volume :

```bash
docker volume inspect mariadb_data
```

### Étape 6 : gérer MariaDB avec Docker Compose

Pour des configurations plus complexes, vous pouvez utiliser [Docker Compose](https://www.ionos.fr/digitalguide/serveur/configuration/tutoriel-docker-compose/). Pour cela, créez un fichier `docker-compose.yml` avec le contenu suivant :

```yaml
version: '3.1'
services:
    mariadb:
        image: mariadb:latest
        container_name: mariadb-compose
        environment:
            MYSQL_ROOT_PASSWORD: password
            MYSQL_DATABASE: example_db
        ports:
            - "3306:3306"
        volumes:
            - mariadb_data:/var/lib/mysql
volumes:
    mariadb_data:
```

Démarrez l’environnement avec :

```bash
docker-compose up -d
```

MariaDB fonctionne désormais en arrière-plan, avec un stockage persistant et une base de données préconfigurée.

### Étape 7 : arrêter, démarrer et supprimer un conteneur

Avec Docker, la gestion des conteneurs est très simple. Vous pouvez arrêter ou redémarrer à tout moment le conteneur **MariaDB Docker** sans perte de données, à condition d’utiliser des volumes. Voici les commandes à utiliser.

**Arrêter un conteneur :**

```bash
docker stop mariadb-container
```

**Démarrer un conteneur :**

```bash
docker start mariadb-container
```

**Supprimer un conteneur :**

```bash
docker rm mariadb-container
```

**Supprimer un conteneur avec le volume :**

```bash
docker rm -v mariadb-container
```

### Étape 8 : redémarrage automatique du conteneur

Pour que votre conteneur **MariaDB Docker** redémarre automatiquement après un redémarrage du système hôte, vous pouvez définir la politique de reboot :

```bash
docker run --name mariadb-container -e MYSQL_ROOT_PASSWORD=password \
    -v mariadb_data:/var/lib/mysql \
    -p 3306:3306 \
    --restart unless-stopped \
    -d mariadb:latest
```

`--restart unless-stopped` garantit que le conteneur démarre automatiquement après un redémarrage du système, sauf si vous l’aviez arrêté manuellement.


This is a markdown version of: [https://www.ionos.fr/digitalguide/hebergement/aspects-techniques/mariadb-docker/](https://www.ionos.fr/digitalguide/hebergement/aspects-techniques/mariadb-docker/) for AI/LLM consumption.