Как определить базовые слои изображения в докере - PullRequest
0 голосов
/ 30 апреля 2019

Мне нужно определить, какие слои изображения докера относятся к базовому изображению. Например, изображение «mysql» состоит из базового изображения «debian», а также нескольких слоев.

    C:\WINDOWS\system32>docker history mysql
IMAGE               CREATED             CREATED BY                                      SIZE                COMMENT
d72169616e20        5 days ago          /bin/sh -c #(nop)  CMD ["mysqld"]               0B
<missing>           5 days ago          /bin/sh -c #(nop)  EXPOSE 3306 33060            0B
<missing>           5 days ago          /bin/sh -c #(nop)  ENTRYPOINT ["docker-entry…   0B
<missing>           5 days ago          /bin/sh -c ln -s usr/local/bin/docker-entryp…   34B
<missing>           5 days ago          /bin/sh -c #(nop) COPY file:1667e4be6bef3129…   6.53kB
<missing>           5 days ago          /bin/sh -c #(nop) COPY dir:478f098f3681084f7…   1.22kB
<missing>           5 days ago          /bin/sh -c #(nop)  VOLUME [/var/lib/mysql]      0B
<missing>           5 days ago          /bin/sh -c {   echo mysql-community-server m…   328MB
<missing>           5 days ago          /bin/sh -c echo "deb http://repo.mysql.com/a…   56B
<missing>           5 days ago          /bin/sh -c #(nop)  ENV MYSQL_VERSION=8.0.16-…   0B
<missing>           4 weeks ago         /bin/sh -c #(nop)  ENV MYSQL_MAJOR=8.0          0B
<missing>           4 weeks ago         /bin/sh -c set -ex;  key='A4A9406876FCBD3C45…   27.8kB
<missing>           4 weeks ago         /bin/sh -c apt-get update && apt-get install…   44.8MB
<missing>           4 weeks ago         /bin/sh -c mkdir /docker-entrypoint-initdb.d    0B
<missing>           4 weeks ago         /bin/sh -c set -x  && apt-get update && apt-…   4.44MB
<missing>           4 weeks ago         /bin/sh -c #(nop)  ENV GOSU_VERSION=1.7         0B
<missing>           4 weeks ago         /bin/sh -c apt-get update && apt-get install…   10.2MB
<missing>           4 weeks ago         /bin/sh -c groupadd -r mysql && useradd -r -…   329kB
<missing>           4 weeks ago         /bin/sh -c #(nop)  CMD ["bash"]                 0B
<missing>           4 weeks ago         /bin/sh -c #(nop) ADD file:4fc310c0cb879c876…   55.3MB

Представьте, что вы тянете изображение с именем "X", в котором есть базовое изображение "mysql" и другие слои. Как узнать, какие слои предназначены для "mysql", а другие слои для изображения "X"

Команда "docker history X" показывает мне все слои, но не ссылается на каждый слой, если это базовое изображение или нет.

Есть идея или инструмент, который может мне помочь?

...