Comment monter automatiquement des volumes pour les conteneurs Docker

Besoin d'améliorer votre visibilité?

Votre site internet ne décolle pas, ou vous souhaitez obtenir des conseils d'optimisation, notre expert vous répond gratuitement du lundi au samedi et de 9h à 19h:

Envoyer un message

Vous cherchez à ajouter un stockage persistant pour vos déploiements de conteneurs Docker ? Jack Wallen vous montre comment, à travers un exemple WordPress.

Comment monter automatiquement des volumes pour les conteneurs Docker
Image : o_m/Shutterstock

Il existe de nombreuses raisons pour lesquelles vous souhaitez utiliser des volumes pour vos déploiements de conteneurs. La principale raison est d’assurer un stockage persistant. Supposons, par exemple, que vous déployiez une instance WordPress via un conteneur Docker. Non seulement vous voulez donner à ce conteneur suffisamment d’espace de stockage pour héberger toutes les données dont il aura besoin (en particulier à mesure qu’il évolue), mais vous voulez également vous assurer que les données restent en jeu, même après l’arrêt ou le redémarrage du conteneur. Pour cela, vous utiliseriez des volumes.

VOIR : Kubernetes : une feuille de triche (PDF gratuit) (TechRepublic)

Mais que se passe-t-il lorsque vous redémarrez finalement ce conteneur Docker ? Le volume contenant les données sera-t-il toujours là lorsque le conteneur sera réactivé ? Passons en revue les étapes de création et d’utilisation d’un volume tel qu’il sera toujours là pour votre déploiement de conteneur Docker.

Ce dont vous aurez besoin

Pour que cela fonctionne, vous aurez besoin d’une machine avec une instance en cours d’exécution du moteur Docker. Je ferai une démonstration sur Ubuntu Server 20.04, mais peu importe la plate-forme, tant que Docker fonctionne correctement.

Comment créer le volume

La première chose que nous allons faire est de créer le répertoire qui hébergera les données d’un conteneur WordPress. Nous appellerons ce répertoire wp-data et créerons le répertoire avec la commande :

sudo mkdir /mnt/wp-data

Comment déployer les conteneurs

Pour bien faire les choses, installons d’abord Docker Compose. Faites cela avec la commande :

sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

Assurez-vous de visiter la page de téléchargement de Docker Compose pour vous assurer que vous téléchargez la dernière version du binaire.

Donnez au binaire nouvellement téléchargé les autorisations appropriées avec la commande :

sudo chmod +x /usr/local/bin/docker-compose

Ce que nous allons faire maintenant est de créer un fichier docker-compose.yml et de créer le manifeste nécessaire pour un déploiement de conteneur WordPress. Créez ce fichier avec la commande :

nano docker-compose.yml

Dans ce fichier, collez ce qui suit :

version: '3.3'

prestations de service:
bd :
image : mysql:5.7
tomes :
– /mnt/wp-data:/var/lib/mysql
redémarrer : toujours
environnement:
MYSQL_ROOT_PASSWORD : somewordpress
BASE_DONNEES_MYSQL : wordpress
MYSQL_USER : wordpress
MOT DE PASSE_MYSQL : wordpress

wordpress :
dépend de:
– db
image: wordpress: dernier
ports :
– « 8000:80 »
redémarrer : toujours
environnement:
WORDPRESS_DB_HOST : db : 3306
WORDPRESS_DB_USER : wordpress
WORDPRESS_DB_PASSWORD : wordpress
WORDPRESS_DB_NAME : wordpress
tomes :
db_data : {}

Remarquez les lignes :

volumes:
- /mnt/wp-data:/var/lib/mysql

C’est là que nous avons défini nos volumes pour le conteneur.

Enregistrez et fermez le fichier.

Déployez le conteneur Nextcloud avec la commande :

docker-compose up -d

Donnez au conteneur le temps de se déployer et, une fois qu’il l’a fait, visitez SERVER:8000 (où SERVER est l’adresse IP du serveur d’hébergement) et vous devriez être dirigé vers la configuration de WordPress (Figure A).

Figure A

Comment monter automatiquement des volumes pour les conteneurs Docker
La configuration de WordPress est prête pour que vous puissiez terminer la tâche.

Maintenant, si vous vous reconnectez à votre serveur et lancez la commande ls /mnt/wp-data, vous devriez voir que ce répertoire a été rempli de fichiers et de sous-répertoires. Si vous arrêtez ce conteneur en cours d’exécution (à l’aide de la commande docker stop CONTAINERID – où CONTAINERID est l’ID de notre nouveau conteneur), vous pouvez alors le redémarrer (avec la docker-composer jusqu’à -d commande), et tout devrait être exactement comme vous l’avez laissé. Pourquoi? Parce que nous avons créé des volumes persistants qui se montent automatiquement lors du redémarrage d’un conteneur. L’utilisation de volumes de cette manière garantit non seulement que vos répertoires de données sont toujours disponibles pour vos conteneurs, mais sert également de sorte de fonctionnalité de montage automatique, chaque fois que vous redéployez le conteneur.

Abonnez-vous à TechRepublic Comment faire fonctionner la technologie sur YouTube pour tous les derniers conseils techniques pour les professionnels de Jack Wallen.


Article traduis depuis:
Source link