Premiers pas avec Docker

Premiers pas avec Docker

Mardi, 21 Janvier 2025 Docker Mysql

Curieux de tester facilement telle ou telle solution, il est vite fastidieux de monter un serveur dédié à chaque fois. Heureusement, aujourd’hui, une solution comme docker permet d‘accélérer grandement le temps de mise en place de configurations de tests. Voici un exemple simple et rapide avec MariaDB.

Pour essayer Docker, il existe beaucoup de méthodes très simples : un serveur Linux lambda, les NAS le permettent parfois (Synology, Promox, true NAS …) et on peut aussi l’installer directement avec Windows … J’ai personnellement choisi de me simplifier la vie en utilisant une distribution Linux adapté à cet usage dans une VM.

Photon OS

Photon OS est une distribution très épurée, réputée sécurisée et, surtout, conçue pour l’utilisation de conteneurs. Elle est maintenue par VMWare et est ainsi particulièrement performante et compatible sur leurs hyperviseurs (ESXi ou VMWare Fusion/Workstation).

Pour ma part, je l’ai installé comme VM sur un Esxi 6.7 et la mise en œuvre se déroule sans accroc en suivant ce tuto d’Antoine Guilbert. En quelques minutes, vous avez à disposition une solution Docker, configuré et fonctionnelle, avec une interface graphique de gestion dédiée (Portainer.io, elle-même hébergée dans un conteneur Docker).

MariaDB comme container de test

Pour tester ceci, je vais installer un conteneur pour une base de données MariaDB simple (car c’est la BD que je sais le mieux configurer) en utilisant une image préconfigurée de Docker hub (mariadb:latest).

Le process est assez simple : dans l’environnement local, je vais sur l’onglet « Containers » puis clique sur « Add container ».

Je précise l’image (mariadb:latest) puis clique sur "Always pull the image" pour qu’il me la rapatrie automatiquement (j’aurais aussi pu le faire au préalable via l’onglet « images »).

Pour configurer le container, 3 sujets sont à prendre en compte dans notre cas :

  1. Comment on accède au container : la partie network et mappage de ports
  2. Comment on stocke les infos en dehors du container : les volumes
  3. Comment on configure l’application dans le container : les variables

Comme je souhaite accéder à ma base de données avec la même IP que celle de Photon OS (celle aussi utilisée par Portainer.io), je vais me contenter du mappage de port. La partie Network permet d’aller plus loin dans la partie réseau.

Pour accéder à MariaDB depuis l’extérieur du container, je vais utiliser le port 13306 que je vais mapper vers le 3306 (celui natif de MariaDB et utilisé par le container).

Pour les volumes, je vais laisser Portainer gérer ça !

Pour les variables, je vais configurer le root, une BD et un utilisateur.

Il ne me reste plus qu’à cliquer sur "Deploy the container" et la magie opère !!!

Et la base de données fonctionne très bien 😊

Volumes

Lors de la création du container, un volume Docker a automatiquement été crée pour stocker les données. Ce volume peut être vu dans la liste des volumes :

Pour y accéder, la méthode la plus simple reste de passer via l'os de l’hôte : se connecter en ssh sur Photon OS et naviguer jusqu'au volume. Les données sont bien là !

Pas de commentaire encore
Recherche