Passer au contenu principal

Utilisation des instructions ADD et COPY dans le Dockerfile

L'instruction ADD

Dans un Dockerfile, l’instruction ADD est utilisée pour copier des fichiers, des répertoires ou des archives tar depuis le système de fichiers local de l’hôte vers le système de fichiers de l’image Docker en cours de construction. Son format général est :

ADD <source> <destination>
  • <source> peut être un fichier, un répertoire ou une archive tar sur le système de fichiers local de l’hôte.
  • <destination> est le chemin à l’intérieur de l’image Docker.

Si <source> est une archive tar, elle sera automatiquement décompressée dans le répertoire de destination dans l’image Docker.

Exemple :

ADD --chown=docker:docker ./ /app

Cette ligne ajoute tous les fichiers et répertoires du répertoire courant (ici représenté par ./) de la machine hôte à l’emplacement /app dans le système de fichiers de l’image Docker.

L’option --chown=docker:docker est utilisée pour définir les propriétaires et les groupes des fichiers ajoutés dans l’image. Dans cet exemple, les fichiers seront possédés par l’utilisateur docker et le groupe docker.

L'instruction COPY

L’instruction COPY a une fonctionnalité similaire à ADD, mais ADD a la capacité supplémentaire de manipuler les archives tar et les URL distantes. Cependant, dans la plupart des cas, l’utilisation de COPY est recommandée car elle est plus transparente et prévisible. ADD doit être utilisé dans les cas spécifiques où vous souhaitez utiliser la décompression automatique des archives tar ou copier des fichiers à partir d’une URL.