Visualisation_de_la_hiérarchie_des_images__french_

Visualisation de la hiérarchie des images

Afin de mieux comprendre comment sont composées les images Docker, il important de comprendre les couches qui les composent. L’outil DockViz permet de générer une image de ces couches.

Nous allons lancer cet outil sur l’hôte. Les images suivantes sont installées :

docker images
REPOSITORY                       TAG                 IMAGE ID            CREATED             SIZE
devopstestlab/graphviz           latest              6844578f44e8        5 hours ago         41.4MB
alpine                           latest              d6e46aa2470d        3 weeks ago         5.57MB
devopstestlab/nginx-helloworld   latest              9468dea24c09        7 months ago        19.7MB
nate/dockviz                     latest              93b5259c1e18        2 years ago         6.61MB

Créons un conteneur Docker sur l’image nate/dockviz. Ce conteneur génère une image au format dot. Ensuite, nous utilisons l’image Docker devopstestlab/graphviz pour convertir cette image au format png :

docker run --rm -v /var/run/docker.sock:/var/run/docker.sock nate/dockviz images --dot |docker run -i -v $PWD:/tmp devopstestlab/graphviz dot -Tpng -o /tmp/docker-graph.png

Une image docker-graph.png est générée :

graph.png

Les noeuds avec <missing> sont des couches d’images Docker.

Visualisation_de_la_hiérarchie_des_images__english_

Visualization of the image hierarchy

In order to better understand how Docker images are composed, it is important to understand the layers that make them up. The DockViz tool allows you to generate an image of these layers.

We will launch this tool on the host. The following images are installed:

docker images
REPOSITORY                       TAG                 IMAGE ID            CREATED             SIZE
devopstestlab/graphviz           latest              6844578f44e8        5 hours ago         41.4MB
alpine                           latest              d6e46aa2470d        3 weeks ago         5.57MB
devopstestlab/nginx-helloworld   latest              9468dea24c09        7 months ago        19.7MB
nate/dockviz                     latest              93b5259c1e18        2 years ago         6.61MB

Let’s create a Docker container based on the image nate/dockviz. This container generates an image in dot format. Then we use the Docker image devopstestlab/graphviz to convert this image to png format:

docker run --rm -v /var/run/docker.sock:/var/run/docker.sock nate/dockviz images --dot |docker run -i -v $PWD:/tmp devopstestlab/graphviz dot -Tpng -o /tmp/docker-graph.png

A docker-graph.png image is generated:

graph.png

Nodes with <missing> are layers of Docker images.

Formater_la_sortie_des_commandes_Docker__english_

Formatting the output of the Docker commands

Sometimes it is very useful to change the columns displayed in the output of the Docker commands either to reduce the width of the display or to rearrange the displayed columns.

To do this, use the --format argument. The specified value is in Go format.

For example, let’s display the list of containers with the container name, image name and container status, separated by a tab character :

docker container ps -a --format "table {{.Names}}\t{{.Image}}\t{{.Status}}"
NAMES                   IMAGE                            STATUS
compassionate_burnell   devopstestlab/nginx-helloworld   Up 4 seconds

You can now adapt the display format of the Docker commands according to your wishes.

Formater_la_sortie_des_commandes_Docker__french_

Formater la sortie des commandes Docker

Parfois, il est très utile de modifier les colonnes affichées dans la sortie des commandes Docker soit pour réduire la largeur de l’affichage, soit pour redisposer les colonnes affichées.

Pour cela, utilisez l’argument --format. La valeur spécifiée est au format Go.

Par exemple, affichons la liste des conteneurs avec le nom du conteneur, le nom de l’image et l’état du conteneur, séparés par un caractère de tabulation :

docker container ps -a --format "table {{.Names}}\t{{.Image}}\t{{.Status}}"
NAMES                   IMAGE                            STATUS
compassionate_burnell   devopstestlab/nginx-helloworld   Up 4 seconds

Vous savez maintenant adapter le format d’affichage des commandes Docker selon vos souhaits.

Filtrer_la_sortie_des_commandes_Docker__english_

Filter the output of Docker commands

Here we will see how to filter the output of the Docker commands.

The format of a filter is --filter < key>=< value>. To apply several filters, just use this argument several times.

Let’s display the list of images present on the host :

docker images
REPOSITORY                       TAG                 IMAGE ID            CREATED             SIZE
alpine                           latest              d6e46aa2470d        3 weeks ago         5.57MB
devopstestlab/nginx-helloworld   latest              9468dea24c09        7 months ago        19.7MB
centos/tools                     latest              fd317373544e        22 months ago       1.51GB

Now, let’s only display images whose name is in the form <REGISTRY>/<REPOSITORY>:latest and which are not dangling :

docker image ls --filter dangling=false --filter "reference=*/*:latest"
REPOSITORY                       TAG                 IMAGE ID            CREATED             SIZE
devopstestlab/nginx-helloworld   latest              9468dea24c09        7 months ago        19.7MB
centos/tools                     latest              fd317373544e        22 months ago       1.51GB
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×