Maison  >  Article  >  Opération et maintenance  >  Comment copier des fichiers dans Docker ? Copier où ?

Comment copier des fichiers dans Docker ? Copier où ?

PHPz
PHPzoriginal
2023-04-18 14:10:182722parcourir

Docker est une plateforme open source pour créer, déployer et exécuter des applications. Son idée principale est de regrouper une application et ses dépendances dans un conteneur pour un déploiement et une exécution faciles dans différents environnements. Lorsque nous utilisons Docker, nous devons souvent copier des fichiers dans le conteneur. Cet article explique comment copier des fichiers dans Docker.

Première méthode et la plus couramment utilisée, nous pouvons utiliser la commande cp de Docker pour copier des fichiers. La syntaxe de la commande cp est la suivante :

docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|-
docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH

Parmi eux, CONTAINER fait référence au nom ou à l'ID du conteneur, SRC_PATH est le chemin du fichier source dans le conteneur et DEST_PATH est le chemin du fichier cible en dehors du conteneur. Si DEST_PATH est défini sur "-", cela signifie une sortie à l'écran.

Par exemple, supposons que nous devions copier le fichier local /root/abc.txt dans un conteneur nommé mycontainer et l'enregistrer sous /tmp/def.txt, nous pouvons alors exécuter la commande suivante :

docker cp /root/abc.txt mycontainer:/tmp/def.txt

De même, si nous Vous devez copier le fichier /var/log/app.log dans le conteneur dans le répertoire local /tmp. Vous pouvez exécuter la commande suivante :

docker cp mycontainer:/var/log/app.log /tmp

En plus d'utiliser la commande Docker cp, nous pouvons également utiliser ADD ou. Instruction COPY dans le Dockerfile Copier les fichiers. Les instructions ADD et COPY peuvent copier les fichiers sources du contexte de construction (c'est-à-dire le répertoire où se trouve le Dockerfile) dans le conteneur. La syntaxe de la commande

ADD est la suivante :

ADD [--chown=<user>:<group>] <src>... <dest>

Parmi eux, le paramètre --chown indique l'utilisateur et le groupe qui définit le fichier lors de la copie du fichier. Si aucun paramètre n'est spécifié, l'utilisateur et le groupe où se trouve le Dockerfile sont utilisés. La syntaxe de la directive

COPY est la suivante :

COPY [--chown=<user>:<group>] <src>... <dest>

Similaire à la directive ADD, le paramètre --chown peut également être utilisé pour spécifier la propriété du fichier.

Par exemple, l'instruction ADD est utilisée dans le Dockerfile suivant pour copier le fichier local app.jar dans le répertoire /app du conteneur :

FROM ubuntu
ADD app.jar /app/app.jar

De même, l'instruction COPY est utilisée dans le Dockerfile suivant pour copier le répertoire local conf dans le répertoire /app du conteneur. /conf :

FROM ubuntu
COPY --chown=user:group conf /app/conf

Il convient de noter que lors de l'utilisation de l'instruction ADD ou COPY, le propriétaire et les autorisations du fichier ou du répertoire sont transmis au conteneur via le système de fichiers de l'hôte. Si la propriété du fichier ou du répertoire dans le système de fichiers hôte est incorrecte, le fichier ou le répertoire copié aura également des problèmes d'autorisation.

En résumé, pour copier des fichiers depuis Docker, vous pouvez utiliser la commande Docker cp et la commande ADD ou COPY dans le Dockerfile. Grâce aux méthodes ci-dessus, nous pouvons effectuer efficacement des opérations de copie de fichiers dans 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