Docker: Слои — Показать Слои Образа & Размеры

Docker-образ состоит из серии слоев, каждый из которых представляет собой инструкцию из Dockerfile с помощью которого был собран образ.

Иногда может возникнуть необходимость просмотреть из каких слоев состоит образ, их размеры и инструкции, из которых они были созданы.

В этой заметке я покажу, как вывести информацию о все слоях, из которых состоит Docker-образ, показать их размеры и инструкции из Dockerfile из которого был образ собран.

Дельный Совет: Образ vs. Контейнер … В чем разница? Читать Далее →

Слои в Docker

Показать размер Docker-образа:

$ docker images <image>

— пример —

$ docker images nginx
REPOSITORY       TAG              IMAGE ID            CREATED             SIZE
nginx            latest           9beeba249f3e        9 days ago          127MB

Показать все слои из которых состоит Docker-образ:

$ docker history <image>

— пример —

$ docker history nginx:latest
IMAGE         CREATED        CREATED BY                                      SIZE
9beeba249f3e  9 days ago     /bin/sh -c #(nop)  CMD ["nginx" "-g" "daemon…   0B
<missing>     9 days ago     /bin/sh -c #(nop)  STOPSIGNAL SIGTERM           0B
<missing>     9 days ago     /bin/sh -c #(nop)  EXPOSE 80                    0B
<missing>     9 days ago     /bin/sh -c ln -sf /dev/stdout /var/log/nginx…   22B
<missing>     9 days ago     /bin/sh -c set -x     && addgroup --system -…   57.6MB
<missing>     9 days ago     /bin/sh -c #(nop)  ENV PKG_RELEASE=1~buster     0B
<missing>     9 days ago     /bin/sh -c #(nop)  ENV NJS_VERSION=0.3.9        0B
<missing>     9 days ago     /bin/sh -c #(nop)  ENV NGINX_VERSION=1.17.10    0B
<missing>     9 days ago     /bin/sh -c #(nop)  LABEL maintainer=NGINX Do…   0B
<missing>     10 days ago    /bin/sh -c #(nop)  CMD ["bash"]                 0B
<missing>     10 days ago    /bin/sh -c #(nop) ADD file:7780c81c33e6cc5b6…   69.2MB

Почему missing? Значение <missing> в поле IMAGE для всех слоев образа, кроме одного, вводит в заблуждение и подобрано немного неудачно. Оно передает предположение об ошибке, но не является ошибкой, поскольку слои больше не являются синонимами соответствующего образа и ID. Читать Далее →

Не обрезать вывод:

$ docker history --no-trunc <image>