Différence entre les commandes «Copier» et «Add» dans un dockerfile

Différence entre les commandes «Copier» et «Add» dans un dockerfile
Dockerfile est utilisé pour créer une image dans l'environnement Docker. Il s'agit d'un fichier d'instructions qui comprend des commandes pour créer une image docker. Cependant, les images Docker peuvent être créées à partir du terminal en exécutant chaque instruction ou commande, qui peut être mouvementée. Dockerfile fournit différentes commandes, telles que «DEPUIS"Est utilisé pour définir l'image de base,"Travail»Spécifiez le répertoire de travail,«COURIR”Est ​​utilisé pour exécuter la commande ou l'instruction spécifiée dans la couche supérieure de Docker, et«COPIE" et "AJOUTER»Commandes Ajouter le fichier source au chemin du conteneur.

Ce blog fait la distinction entre les commandes «copier» et «ajouter».

Différence entre les commandes «Copie» et «Add» du Dockerfile

Les deux commandes fonctionnent de la même manière et sont utilisées dans le même but. Ces commandes copient ou ajoutent le fichier source sur le chemin de destination dans un conteneur. La principale différence entre ces deux commandes est la commande «Copier» ne copie que le fichier localement vers le conteneur de chemin de destination. Cependant, la commande «Ajouter» peut ajouter des fichiers à partir de sources locales et distantes via URL.

De plus, la commande «ADD» prend également en charge la «le goudron”Extraction et est largement utilisé pour l'extraction de fichiers de goudron local en conteneurs ou images.

Comment utiliser les commandes DockerFile «Copier» et «Ajouter»?

Pour utiliser le «COPIE" et "AJOUTER”Commandes dans dockerfile, passez par les exemples fournis:

Exemple 1: Commande «Copier» dans Dockerfile

Le "COPIE»Commande copie le fichier source localement sur le chemin du conteneur.

La syntaxe du «COPIE»La commande est la suivante:

COPIE

Faisons un DockerFile qui contiendra des instructions pour déployer une application Golang simple:

De Golang: Alpine
Workdir / go / src / app
Copier principal.aller .
Exécuter Go Build -O Webserver .
CMD ["./serveur Web"]

Dans l'extrait ci-dessus:

  • "DEPUIS”Est ​​utilisé pour définir l'image de base.
  • "Travail»Spécifie le répertoire de travail sur conteneur ou image.
  • "COPIE"Copie le"principal.aller”Fixez localement et dépassez-le sur le chemin du conteneur.
  • "COURIR”Est ​​utilisé pour exécuter la commande spécifiée sur la couche la plus la plus élevée du conteneur Docker.
  • "CMD»Définit le chemin par défaut de l'exécution ou du point d'entrée pour un conteneur:

Exemple 2: Commande «Ajouter» à Dockerfile

Le "AJOUTER»L'instruction est utilisée pour ajouter ou copier le fichier à partir de l'URL source et le coller à l'adresse de destination dans le conteneur.

La syntaxe utilisée pour spécifier le «AJOUTER”La commande dans le dockerfile est donnée ci-dessous:

AJOUTER

Dans le bloc de code ci-dessous, nous avons spécifié l'URL pour copier le «principal.aller”Fichier de GitHub et collez-le au chemin du conteneur:

Comment créer une image et le déployer à l'aide de dockerfile?

Pour construire une image pour conteneuriser et déployer l'application à partir de dockerfile, passez par les instructions d'instructions données.

Étape 1: Créez une image

Créez la nouvelle image Docker pour conteneriser l'application via la commande donnée:

> docker build -t new-go-iMg .

Étape 2: Exécutez l'image comme conteneur

Exécutez l'image pour déployer l'application via «run docker" commande. Cette commande générera automatiquement le conteneur et l'exposera sur le port "8080". Ici le "-d«L'option est utilisée pour exécuter le conteneur en mode détaché, et«-p»Spécifie le port exposant du conteneur:

> docker run -d -p 8080: 8080 new-go-iMg

Pour la confirmation, accédez au port spécifié localhost «8080". Ici, nous avons réussi à exécuter le «principal.aller»Programme:

Nous avons distingué la «copie» et «ajouter» dans dockerfile.

Conclusion

Le "COPIE" et "AJOUTER»Les commandes sont utilisées dans un usage similaire. Ceux-ci sont utilisés pour copier les fichiers d'un emplacement source à un chemin de conteneur. Cependant, la commande «Copier» copie le fichier localement et la commande «Add» ajoute le fichier de l'URL SRC au conteneur. La commande «Ajouter» est également utilisée pour l'extraction de fichiers de goudron local dans des conteneurs ou des images. Cet article a distingué les commandes «Copier» et «Add» dans Dockerfile.