Introduction
MariaDB est un système de gestion de base de données (SGBD) diffusé sous licence GPL (Gnu Public Licence). Elle est basé sur le code source de MySQL.
MariaDB nous sera utile pour de nombreux containeurs qui ont besoin d’un SGBD pour fonctionner. J’ai pris le parti d’installer un seul containeur MariaDB qui nous servira pour tous les autres Containeurs. Cela est plus simple à gérer et moins lourd pour le système, mais par contre les bases de données ne seront pas isolées les une des autres et seront toutes présentes dans ce même Container MariaDB.
Pour cette installation j’utilise l’image officielle qui est présente ici : github.com/linuxserver/docker-mariadb
J’ai créé au préalable un utilisateur omdocker (voir l’article création d ‘un utilisateur Docker pour le détail). J’ai créé aussi un répertoire qui contiendra tous mes installations docker. dans ce blog, j’utiliserais pour exemple le chemin /volume/docker.
Nous allons créer aussi le répertoire mariadb en ligne de commande sur le NAS (connexion en SSH) dans notre répertoire docker : /volume/docker. Cette étape est facultative, le containeur créera le répertoire automatiquement lors du déploiement si celui ci n’existe pas.
mkdir mariadb
Le fichier de configuration
Si vous souhaitez sécuriser le lancement de ‘mariaDB‘, je vous engage à parcourir l’article securiser docker
Il est importent de bien respecter l’indentation des fichiers de configurations : pas de tabulation. Attention aussi à la version du fichier, il y a des légères évolutions de syntaxe d’une version à l’autre.
Le fichier yml en détails. Il faut remplacer pour votre configuration :
- passwd : Le mot de passe root de votre bases de données,
- /volume/docker/ : Le chemin qui contient les installations de tous vos containeurs,
- PUID et PGID : celui de votre utilisateur Docker (omdocker chez moi),
- TZ : Votre zone de temps.
version: "2"
services:
mariadb:
image: linuxserver/mariadb
container_name: mariadb
environment:
- PUID=1003
- PGID=100
- MYSQL_ROOT_PASSWORD=passwd
- TZ=Europe/Paris
volumes:
- /volume/docker/mariadb:/config
restart: unless-stopped
Vous copiez le contenu de ce fichier dans votre interface de gestion Portainer en allant dans ‘Stacks‘ et ‘Add stack‘.
Donnez un nom à votre pile, par exemple ‘mariadb‘, puis déployer cotre containeur en cliquant en bas sur « Deploy the stack‘.
Après une phase de téléchargement de l’image, puis d’installation de l’application, vous devriez arriver sur cet écran si tout s’est bien passé :