Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

185
Views
Aclaración de Docker --tag vs --name

Soy bastante nuevo en Docker y estoy un poco desconcertado por la diferencia entre etiquetar (--tag) una imagen y asignarle un nombre (--name). Por ejemplo, puedo ver que si construyo mi imagen personalizada a partir de un archivo Docker, puedo etiquetarla con un nombre:

 sudo docker build --tag=tomcat-admin . sudo docker run -it tomcat-admin

Pasar el nombre a la ventana acoplable inspeccionar produce un resultado:

 docker inspect tomcat-admin

Sin embargo, no contiene los mismos atributos de una imagen "nombrada":

 docker inspect --format '{{ .NetworkSettings.IPAddress }}' tomcat-admin Template parsing error: template: :1:19: executing "" at <.NetworkSettings.IPA...>: map has no entry for key "NetworkSettings

"

Alguien que arroje algo de luz al respecto? ¡Gracias!

over 4 years ago · Santiago Trujillo
3 answers
Answer question

0

Creo que mezclaste dos conceptos aquí, lo que causa la confusión. Por un lado, hay una imagen de Docker que puede considerar como un modelo para iniciar un contenedor. Por otro lado, hay contenedores que ejecutan instancias que se basan en una imagen.

Cuando docker build -t tagname . está creando una imagen y etiquétela con un formato de "nombre: etiqueta" por lo general. Entonces, por ejemplo, está construyendo su imagen como

 docker build -t myimage:1.0 .

que crea una nueva imagen que se llama myimage con una versión de 1.0 . Esto es lo que verá cuando ejecute docker images .

El parámetro --name luego se usa cuando crea e inicia un nuevo contenedor basado en su imagen. Entonces, por ejemplo, ejecuta un nuevo contenedor usando el siguiente comando:

 docker run -it --name mycontainerinstance myimage

Esto crea un nuevo contenedor basado en su imagen myimage . Esta instancia de contenedor se denomina mycontainerinstance . Puede ver esto cuando ejecuta docker ps -a que enumerará el contenedor con su nombre de contenedor mycontainerinstance .

Entonces, para comprender mejor la diferencia, eche un vistazo a los documentos para crear una imagen y ejecutar un contenedor , especificando una imagen . Al leer los documentos, notará qué comandos apuntan a una imagen y qué comandos son para contenedores. También verá que hay comandos que funcionan para imágenes y contenedores como lo hace docker inspect .

La inspección de una dirección de red, por supuesto, solo funciona cuando proporciona un nombre de contenedor, no una imagen. En su caso especial, el contenedor obtuvo un nombre generado, que puede ver ejecutando docker ps -a . Cuando proporcione este nombre al comando de docker inspect , es probable que vea la dirección IP que deseaba.

over 4 years ago · Santiago Trujillo Report

0

Usted etiqueta una imagen

 docker build --tag=tomcat-admin .

pero le asignas un nombre a un contenedor

 docker run -it tomcat-admin

Puede asignar varias etiquetas a las imágenes, por ejemplo

 docker build --tag=tomcat-admin --tag=tomcat-admin:1.0 .

Si enumera imágenes, obtiene una línea por etiqueta, pero están relacionadas con la misma identificación de imagen:

 docker images |grep tomcat tomcat-admin 1.0 955395353827 11 minutes ago 188 MB tomcat-admin latest 955395353827 11 minutes ago 188 MB

También puede etiquetar imágenes por segunda vez, no solo cuando las crea, para que pueda mantener diferentes versiones de imágenes.

Cuando ejecuta un contenedor basado en una imagen específica, puede asignarle un nombre, por lo que puede hacer referencia a él usando el nombre en lugar de usar el ID del contenedor.

Obviamente obtienes diferentes atributos al inspeccionar imágenes y contenedores. Creo que es más claro si usa un nombre diferente para la etiqueta de imagen y el nombre del contenedor, por ejemplo

 docker build --tag=tomcat-admin . docker run -d -ti --name=tomcat-admin-container tomcat-admin docker inspect tomcat-admin ==> You inspect the image docker inspect tomcat-admin-container ==> You inspect the container
over 4 years ago · Santiago Trujillo Report

0

Lo confuso es que una etiqueta consta de un nombre y una etiqueta. En la documentación se puede ver que:

--tag , -t Name and optionally a tag in the 'name:tag' format

Entonces, si omite la parte :tag , en realidad agrega un nombre para la imagen. Eso es todo.

La diferencia entre los nombres de las imágenes y los nombres de los contenedores se explica en las respuestas de otros.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!