Maison  >  Article  >  Opération et maintenance  >  Comment modifier le mappage de fichiers Docker

Comment modifier le mappage de fichiers Docker

PHPz
PHPzoriginal
2023-04-25 16:12:323588parcourir

Docker est actuellement l'une des technologies de conteneurs les plus populaires, permettant aux développeurs de développer et de tester des applications dans un environnement fermé. Le mappage de fichiers Docker est un concept important dans Docker, qui permet de mapper des fichiers ou des répertoires sur l'hôte avec des fichiers ou des répertoires dans le conteneur Docker, afin que les applications du conteneur puissent accéder aux ressources sur l'hôte. En utilisation réelle, nous devrons peut-être modifier le mappage des fichiers Docker pour répondre à différents besoins. Cet article présentera les concepts de base du mappage de fichiers Docker et comment modifier le mappage de fichiers Docker.

1. Le concept de base du mappage de fichiers Docker

Le mappage de fichiers Docker fait référence au mappage de fichiers ou de répertoires sur l'hôte avec des fichiers ou des répertoires dans le conteneur Docker. Grâce au mappage de fichiers, les conteneurs Docker peuvent accéder aux ressources sur l'hôte, telles que les fichiers de configuration, les fichiers journaux, etc. Dans Docker, le mappage de fichiers est réalisé via le paramètre -v. Le paramètre -v a les utilisations suivantes : -v参数来实现的。-v参数有以下几种用法:

  1. 将主机的一个目录映射到容器的一个目录:
docker run -v /path/on/host:/path/on/container image-name

这条命令将主机上的/path/on/host目录映射到容器内的/path/on/container目录。

  1. 将当前工作目录映射到容器的一个目录:
docker run -v $(pwd):/path/on/container image-name

这条命令将当前工作目录映射到容器内的/path/on/container目录。

  1. 将一个数据卷映射到容器的一个目录:
docker run -v volume-name:/path/on/container image-name

这条命令将数据卷volume-name映射到容器内的/path/on/container目录。

二、修改Docker文件映射

在实际应用中,我们可能需要修改Docker文件映射。比如,我们在Docker容器中运行一个应用程序,需要将配置文件放到宿主机上的特定目录中,这时就需要修改文件映射,让宿主机上的目录映射到容器内的目录。下面我们来看看如何修改Docker文件映射。

  1. 停止Docker容器

首先,我们需要停止正在运行的Docker容器。可以使用以下命令停止某个Docker容器:

docker stop container-id

其中,container-id是Docker容器的ID。

  1. 修改Docker文件映射

接下来,我们需要修改Docker文件映射,以将需要的目录映射到Docker容器内。修改Docker文件映射需要修改原来的Docker命令。比如,原来的Docker命令为:

docker run -d -p 8080:8080 -v /var/lib/docker/volumes/app-data/_data:/data app:latest

上述命令将/var/lib/docker/volumes/app-data/_data目录映射到了Docker容器内的/data目录。现在我们需要将它修改为:

docker run -d -p 8080:8080 -v /home/user/app-data:/data app:latest

其中,/home/user/app-data是我们想要映射的目录。

  1. 启动Docker容器

修改完Docker命令后,我们需要重新启动Docker容器。可以使用以下命令启动修改后的Docker容器:

docker start container-id

其中,container-id是Docker容器的ID。

修改Docker文件映射后,我们可以进入Docker容器内部,查看是否正确映射了我们需要的目录。可以使用以下命令进入Docker容器内部:

docker exec -it container-id /bin/bash

其中,container-id是Docker容器的ID。进入Docker容器后,我们可以使用cd命令进入到/data

  1. Mappez un répertoire de l'hôte à un répertoire du conteneur :
rrreeeCette commande mappera un répertoire sur l'hôte vers un répertoire sur le conteneur : rrreee

Cette commande va Le répertoire /path/on/host est mappé au /path/ répertoire on/container dans le conteneur.

  1. Mappez le répertoire de travail actuel à un répertoire du conteneur :
rrreee

Cette commande mappe le répertoire de travail actuel à /path dans le conteneur /on/container.

  1. Mappez un volume de données à un répertoire du conteneur :
rrreee🎜Cette commande mappe le volume de données nom-volume Go dans le répertoire /path/on/container dans le conteneur. 🎜🎜2. Modifier le mappage de fichiers Docker🎜🎜Dans les applications réelles, nous devrons peut-être modifier le mappage de fichiers Docker. Par exemple, lorsque nous exécutons une application dans un conteneur Docker, nous devons placer le fichier de configuration dans un répertoire spécifique sur l'hôte. Dans ce cas, nous devons modifier le mappage des fichiers afin que le répertoire sur l'hôte soit mappé sur le. répertoire dans le conteneur. Voyons comment modifier le mappage des fichiers Docker. 🎜
  1. Arrêtez le conteneur Docker
🎜Tout d'abord, nous devons arrêter le conteneur Docker en cours d'exécution. Vous pouvez utiliser la commande suivante pour arrêter un conteneur Docker : 🎜rrreee🎜où, container-id est l'ID du conteneur Docker. 🎜
  1. Modifier le mappage des fichiers Docker
🎜Ensuite, nous devons modifier le mappage des fichiers Docker pour mapper les répertoires requis dans le conteneur Docker. La modification du mappage de fichiers Docker nécessite la modification de la commande Docker d'origine. Par exemple, la commande Docker d'origine est : 🎜rrreee🎜La commande ci-dessus mappe le répertoire /var/lib/docker/volumes/app-data/_data au répertoire /data dans le conteneur Docker > Répertoire. Nous devons maintenant le modifier comme suit : 🎜rrreee🎜où, /home/user/app-data est le répertoire que nous voulons mapper. 🎜
  1. Démarrer le conteneur Docker
🎜Après avoir modifié la commande Docker, nous devons redémarrer le conteneur Docker. Vous pouvez utiliser la commande suivante pour démarrer le conteneur Docker modifié : 🎜rrreee🎜 Où, container-id est l'ID du conteneur Docker. 🎜🎜Après avoir modifié le mappage du fichier Docker, nous pouvons entrer dans le conteneur Docker pour voir si le répertoire dont nous avons besoin est correctement mappé. Vous pouvez utiliser la commande suivante pour saisir le conteneur Docker : 🎜rrreee🎜où, container-id est l'ID du conteneur Docker. Après être entré dans le conteneur Docker, nous pouvons utiliser la commande cd pour entrer dans le répertoire /data et vérifier si les fichiers qui s'y trouvent sont cohérents avec les fichiers sur l'hôte. 🎜🎜Résumé : 🎜🎜Dans cet article, nous avons présenté les concepts de base du mappage de fichiers Docker et démontré comment modifier le mappage de fichiers Docker. En utilisation réelle, le mappage de fichiers Docker doit être modifié en fonction des différents besoins pour répondre aux besoins de l'application. Pour les débutants, maîtriser les connaissances pertinentes du mappage de fichiers Docker peut les aider à mieux utiliser la technologie Docker. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn