Contrairement au volume, il monte les fichiers et répertoires gérés par l'utilisateur hôte sur un conteneur. Là encore, le même fichier ou répertoire peut être monté dans plusieurs conteneurs. Puisqu'il s'agit d'une zone gérée par l'utilisateur, préparez à l'avance le fichier ou le répertoire source de montage, spécifiez le chemin et montez-le dans le conteneur. En plaçant le code source et le fichier de paramètres du projet sur l'hôte et en le montant, vous pouvez vérifier l'opération lors de l'édition du fichier côté hôte.
-# "$(pwd)"Répertoire source sur le répertoire courant(n'existe pas)Est monté.
$ docker run -itd --name bind-test1 -v “$(pwd)”/source:/app nginx
$ ls
source
Si vous utilisez -v, un répertoire est automatiquement créé sur l'hôte si le répertoire n'existe pas.
-# “$(pwd)”/Vous montez un répertoire qui n'existe pas dans source2.
$ docker run -itd —-name bind-test2 —mount type=bind,source=“$(pwd)”/source2,target=/app nginx
Spécifiez Type comme liaison. Exécutez sans un répertoire appelé source2 dans le répertoire courant. Dans ce cas, une erreur se produit. Dans le cas de --mount, une erreur se produira si le répertoire source n'existe pas. Cela vous évitera de monter accidentellement un répertoire vide. L'état du montage de la liaison peut être confirmé en affichant les informations détaillées du conteneur ainsi que le volume.
-# bind-Confirmation détaillée du test1
$ docker inspect bind-test1
"Mounts": [
{
"Type": "bind",
"Source": "/home/docker/source",
"Destination": "/app",
"Mode": "",
"RW": true,
"Propagation": "rprivate"
}
],
Vous pouvez vérifier chacun par type, source et destination. Il est monté en lecture et en écriture par défaut. Notez que le montage de liaison masque le répertoire de destination du montage et les fichiers dans le répertoire de liaison. Si vous couvrez des fichiers et des répertoires importants avec bind, le conteneur peut ne pas fonctionner correctement. Vous pouvez également le monter en lecture seule avec bind mount.
Montez la zone de mémoire hôte sur le conteneur en tant que système de fichiers. Étant donné que les données sont stockées dans la mémoire, les données seront perdues si l'hôte docker est arrêté ou si le conteneur est arrêté. Le but est de l'utiliser comme un endroit pour stocker des données qui sont temporairement stockées au lieu de stocker des données permanentes, et de stocker des données qui peuvent être supprimées sans aucun problème. Argent comptant, mot de passe à usage unique, etc. Vous pouvez éventuellement limiter la taille de montage.
-#Exemple
$ docker run -itd --name tmptest --mount type=tmpfs,destination=/app nginx
Lorsque vous utilisez tmpfs, spécifiez tmpfs comme type. Par défaut, la taille de montage est illimitée et si vous manquez de mémoire, le swap sera utilisé. La taille de montage peut être limitée en spécifiant des options.
-#Exemple
$ docker run -itd --name tmptest2 --mount type=tmpfs,destination=/app,tmpfs-size=500000000,tmpfs-mode=700 nginx
J'ai défini la taille de montage sur 500 Mo et le mode fichier sur 700.
Recommended Posts