Qu'est-ce que les montures Docker Bind?

Qu'est-ce que les montures Docker Bind?

Tout en travaillant sur un projet de développement dans Docker, les développeurs veulent généralement apporter des modifications dans le code et voir les modifications reflétées immédiatement sans reconstruire le conteneur. Dans cette situation, utilisez un support de liaison pour monter le répertoire de code sur leur machine hôte locale dans le conteneur. Ce faisant, les modifications apportées à l'hôte sont immédiatement reflétées à l'intérieur du conteneur. De plus, il est utile lorsque le conteneur est supprimé ou rejeté car les données ne sont pas perdues.

Cet article illustrera:

    • Qu'est-ce que les montures Docker Bind?
    • Comment Bind Mount fonctionne dans Docker?

Qu'est-ce que les montures Docker Bind?

Un support Docker Bind permet aux utilisateurs de cartographier un fichier / répertoire particulier sur la machine hôte dans un fichier / répertoire dans un conteneur. De cette façon, les utilisateurs peuvent partager des données entre l'hôte et le conteneur, et également persister les données même après l'arrêt ou la suppression du conteneur. Toutes les modifications apportées aux fichiers du répertoire ou du fichier partagé sont visibles à la fois à la fois du conteneur et de la machine hôte.

Comment Bind Mount fonctionne dans Docker?

Prenons un exemple et voyons comment fonctionne Bind-Mount dans Docker. Supposons que nous ayons un répertoire vide "Test" situé à "C: \ Docker»Sur un système local. Maintenant, nous voulons accéder au «Test"Contenu du répertoire à l'emplacement"/ application«Depuis un conteneur particulier. Dans cet exemple, exécutez un conteneur à partir de l'image officielle Docker I.e., "nginx»Et utilisez le support de liaison pour monter un répertoire spécifique de la machine hôte dans le conteneur.

Pour une meilleure compréhension, suivez les étapes fournies.

Étape 1: lier le répertoire de montage de la machine hôte au conteneur

Tout d'abord, utilisez le «docker run -d -name -v: »Commande et exécutez un conteneur. Il lie le répertoire de montage de la machine hôte au conteneur:

docker run -d --name mycont -v c: / docker / test: / app nginx: dernier


Ici:

    • "-d«L'option est utilisée pour exécuter le conteneur en arrière-plan.
    • "-nom”Est ​​utilisé pour définir le nom du conteneur.
    • "mycont"Est notre nom de conteneur.
    • "-V"L'option crée un volume dans le conteneur qui mappe le répertoire source sur la machine hôte dans le répertoire cible dans le conteneur.
    • "C: / docker / test«Est le chemin du répertoire source (machine locale).
    • "/ application«Le chemin du répertoire cible (conteneur) est-il.
    • "nginx: dernier«Est la dernière image Docker:



Cette commande a créé un conteneur et lui a permis d'accéder à des fichiers à partir de la machine hôte et de faciliter la gestion de la persistance des données.

Étape 2: Créez un fichier dans le répertoire source sur la machine hôte

Ensuite, accédez au chemin du répertoire source I.e., "C: / docker / test"Sur la machine hôte et créez un fichier texte brut dedans. Par exemple, nous avons créé un «Démo" déposer:


Étape 3: Accédez au fichier de machine hôte à l'intérieur du conteneur

Maintenant, tapez la commande ci-dessous pour accéder au contenu du conteneur et exécutez les commandes à l'intérieur:

docker exec -it mycont bash



Ce faisant, la coquille de conteneur s'ouvrira.

Après cela, listez le contenu du conteneur à l'aide de la commande fournie:

LS



Dans la capture d'écran ci-dessus, tout le contenu du conteneur peut être vu. Choisissez le répertoire souhaité et accédez-y.

Rediriger vers le «appliquer»Répertoire:

application CD


Ensuite, énumérez le «appliquer»Le contenu du répertoire pour vérifier le fichier machine local est disponible dans l'informatique:

LS



On peut observer que le «Démo.SMS»Le fichier est disponible à l'intérieur du conteneur, et nous pouvons y accéder.

Étape 4: Créez un fichier à l'intérieur du conteneur

Ensuite, créez un autre fichier à l'intérieur d'un conteneur à l'aide du «touche" commande:

toucher nouveau.SMS



Nous avons créé un «nouveau.SMS" déposer.

Ensuite, vérifiez le fichier nouvellement créé à l'aide de la commande ci-dessous:

LS



On peut voir que le fichier "nouveau.SMS«A été créé avec succès à l'intérieur du conteneur.

Étape 5: Vérifiez le fichier sur le système local

Enfin, accédez au chemin de la machine locale et vérifiez si le «nouveau.SMS»Le fichier est disponible ou non:


Comme vous pouvez le voir, le «nouveau.SMS"Le fichier est disponible sur la machine locale, et nous pouvons y accéder. Cela indique que les modifications se reflètent également sur la machine locale.

Étape 6: Supprimer le conteneur Docker

Maintenant, retirez le conteneur via le «Docker RM”Commande avec le nom du conteneur:

docker rm mycont



Le "mycont»Le conteneur a été supprimé avec succès.

Étape 7: Assurez-vous que les données persistaient sur la machine locale

Après avoir supprimé le conteneur, vérifiez si les données ont persisté sur la machine locale sur Not:


Comme vous pouvez le voir, les modifications ont persisté même après avoir supprimé le conteneur de montage de liaison.

Conclusion

Docker Bind Mount est utilisé pour cartographier un répertoire ou un fichier du système hôte dans le conteneur. Il crée un lien entre le répertoire ou le fichier spécifié sur l'hôte et le système de fichiers du conteneur. Il est facile et simple de traiter ou de travailler avec des fichiers stockés à l'extérieur du conteneur. Toutes les modifications apportées aux fichiers du répertoire ou du fichier partagé seront reflétés à la fois dans l'hôte et le conteneur. Cet article a expliqué sur Docker Bind Mount et son travail dans Docker.