Cómo usar el comando docker trust inspect para examinar la información de confianza de las imágenes

DockerDockerBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, aprenderá cómo utilizar el comando docker trust inspect para examinar la información de confianza asociada a las imágenes de Docker. Explorará cómo inspeccionar los datos de confianza para etiquetas de imágenes firmadas y no firmadas individuales, así como para todas las etiquetas firmadas dentro de un repositorio.

A través de ejercicios prácticos, adquirirá experiencia práctica en la verificación de la integridad y del publicador de las imágenes mediante la inspección de sus firmas digitales. Aprenderá a interpretar la salida del comando docker trust inspect y a entender la diferencia en la información de confianza entre imágenes firmadas y no firmadas. Finalmente, verá cómo inspeccionar la información de confianza para múltiples imágenes y ver la salida en un formato legible por humanos.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL docker(("Docker")) -.-> docker/ContainerOperationsGroup(["Container Operations"]) docker(("Docker")) -.-> docker/ImageOperationsGroup(["Image Operations"]) docker/ContainerOperationsGroup -.-> docker/inspect("Inspect Container") docker/ImageOperationsGroup -.-> docker/pull("Pull Image from Repository") subgraph Lab Skills docker/inspect -.-> lab-555251{{"Cómo usar el comando docker trust inspect para examinar la información de confianza de las imágenes"}} docker/pull -.-> lab-555251{{"Cómo usar el comando docker trust inspect para examinar la información de confianza de las imágenes"}} end

Inspeccionar la información de confianza de una etiqueta de imagen firmada individual

En este paso, aprenderá cómo inspeccionar la información de confianza de una etiqueta de imagen firmada individual utilizando el comando docker trust inspect. Docker Content Trust (Confianza en el contenido de Docker) le permite verificar la integridad y el publicador de las imágenes que extrae de un registro.

Primero, extraigamos una imagen firmada. Utilizaremos la imagen docker/trusttest, que está específicamente diseñada para probar Docker Content Trust.

docker pull docker/trusttest:latest

Debería ver una salida que indique que se está extrayendo la imagen.

Ahora, podemos inspeccionar la información de confianza de esta etiqueta de imagen específica. El comando docker trust inspect se utiliza para este propósito.

docker trust inspect docker/trusttest:latest

La salida de este comando le mostrará detalles sobre las firmas asociadas a la etiqueta de imagen. Esto incluye los firmantes y sus claves. Si la imagen está firmada, verá información sobre las firmas. Si no está firmada, la salida indicará que no se encontró ningún dato de confianza.

Inspeccionar la información de confianza de una etiqueta de imagen no firmada en un repositorio firmado

En este paso, aprenderá cómo inspeccionar la información de confianza de una etiqueta de imagen no firmada dentro de un repositorio que contiene imágenes firmadas. Esto demuestra que incluso si un repositorio tiene etiquetas firmadas, las etiquetas individuales no firmadas no tendrán información de confianza.

Seguiremos utilizando el repositorio docker/trusttest. En el paso anterior, inspeccionamos la etiqueta latest, que está firmada. Ahora, intentemos inspeccionar una etiqueta que se sabe que no está firmada dentro del mismo repositorio. Utilizaremos la etiqueta unsigned para este propósito.

Primero, intentemos extraer la etiqueta unsigned.

docker pull docker/trusttest:unsigned

Debería ver una salida que indique que se está extrayendo la imagen.

Ahora, inspeccionemos la información de confianza de la etiqueta unsigned utilizando el comando docker trust inspect.

docker trust inspect docker/trusttest:unsigned

Cuando ejecute este comando, probablemente verá una salida que indique que no se encontró ningún dato de confianza para esta etiqueta específica. Esto se debe a que la etiqueta unsigned, a pesar de estar en un repositorio con etiquetas firmadas, no tiene una firma válida por sí misma. Esto destaca que Docker Content Trust (Confianza en el contenido de Docker) opera en una base por etiqueta.

Inspeccionar la información de confianza de todas las etiquetas firmadas en un repositorio

En este paso, aprenderá cómo inspeccionar la información de confianza de todas las etiquetas de imagen firmadas dentro de un repositorio específico. Esto es útil para obtener una visión general de qué etiquetas en un repositorio son de confianza.

Seguiremos utilizando el repositorio docker/trusttest. En los pasos anteriores, analizamos etiquetas individuales. Ahora, inspeccionaremos el repositorio completo para ver todas las etiquetas firmadas.

Para inspeccionar todas las etiquetas firmadas en un repositorio, utilice el comando docker trust inspect seguido del nombre del repositorio sin una etiqueta específica.

docker trust inspect docker/trusttest

Cuando ejecute este comando, la salida enumerará todas las etiquetas dentro del repositorio docker/trusttest que tienen datos de confianza válidos asociados a ellas. Debería ver información para la etiqueta latest (que verificamos está firmada en el Paso 1) y potencialmente otras etiquetas firmadas si existen en ese repositorio. Las etiquetas no firmadas, como la etiqueta unsigned que examinamos en el Paso 2, no aparecerán en esta salida.

Este comando proporciona una forma conveniente de ver rápidamente qué versiones de una imagen en un repositorio se consideran de confianza según Docker Content Trust (Confianza en el contenido de Docker).

Inspeccionar la información de confianza de múltiples imágenes

En este paso, aprenderá cómo inspeccionar la información de confianza de múltiples etiquetas de imagen con un solo comando docker trust inspect. Esto es útil cuando desea verificar el estado de confianza de varias imágenes específicas a la vez.

Inspeccionaremos la información de confianza tanto de la etiqueta latest firmada como de la etiqueta unsigned no firmada del repositorio docker/trusttest en un solo comando.

Para inspeccionar múltiples imágenes, simplemente liste los nombres de las imágenes (incluyendo la etiqueta) después del comando docker trust inspect, separados por espacios.

docker trust inspect docker/trusttest:latest docker/trusttest:unsigned

Cuando ejecute este comando, la salida mostrará la información de confianza de cada etiqueta de imagen especificada. Debería ver los detalles de la firma para docker/trusttest:latest y una indicación de que no se encontraron datos de confianza para docker/trusttest:unsigned. Esto confirma que puede verificar de manera eficiente el estado de confianza de múltiples imágenes en una sola operación.

Inspeccionar la información de confianza en un formato legible por humanos

En este paso, aprenderá cómo mostrar la información de confianza en un formato más legible por humanos utilizando la opción --pretty con el comando docker trust inspect. Por defecto, la salida está en formato JSON, que es útil para scripting (programación de scripts) pero menos adecuado para una inspección rápida por parte de humanos.

Volveremos a inspeccionar la información de confianza de la imagen firmada docker/trusttest:latest, pero esta vez agregaremos la opción --pretty.

docker trust inspect --pretty docker/trusttest:latest

Cuando ejecute este comando, la salida se formateará de una manera más fácil de leer y entender. Por lo general, presentará la información en una estructura similar a una tabla, mostrando detalles sobre la imagen, los firmantes y sus claves en un diseño claro.

Comparando esta salida con la salida JSON predeterminada del Paso 1, puede ver cómo la opción --pretty hace que la información de confianza sea más accesible para la revisión humana. Esto es especialmente útil cuando está verificando manualmente el estado de confianza de una imagen.

Resumen

En este laboratorio (lab), aprendimos cómo usar el comando docker trust inspect para examinar la información de confianza de las imágenes. Comenzamos inspeccionando los datos de confianza de una sola etiqueta de imagen firmada, observando los detalles de las firmas y firmantes asociados. Luego exploramos cómo inspeccionar una etiqueta de imagen no firmada dentro de un repositorio firmado revela que solo las etiquetas firmadas poseen información de confianza.

Ampliamos aún más nuestro conocimiento al inspeccionar la información de confianza de todas las etiquetas firmadas dentro de un repositorio y de múltiples imágenes simultáneamente. Finalmente, aprendimos cómo mostrar la información de confianza en un formato más legible por humanos, lo que facilita la interpretación de los detalles de la firma. Estos pasos brindaron experiencia práctica en la verificación de la integridad y el publicador de las imágenes Docker utilizando Docker Content Trust.