Изображение Docker сохраняет архивы из одного и того же Dockerfile со значительно различными размерами - PullRequest
0 голосов
/ 03 мая 2019

У меня есть образы Docker для сборки на CentOS 7 (Docker версия 1.13.1, сборка b2f74b2) и узел Fedora 29 (v18.09.3) на основе того же Dockerfile, а также перекрестная проверка на наличие идентичных хеш-файлов Docker

sha256sum Dockerfile | cut -b 1-16
38e6a42c5c01a1ac

и создайте контейнеры с

docker build  --build-arg RUN=20190503.centos  -t container:20190503.centos .

Для сравнения / последующей загрузки я сохранил изображения в tarballs.

docker save --output /var/tmp/image_20190503.desktop.tar batch:20190503.desktop

Я бы ожидал, что окончательные тарболы должны быть одинакового размера, так как они основаны на тех же файлах Docker. Bowever, изображения тарболлов значительно отличались

container     20190503.desktop    2e3e545f245d        About an hour ago   6.6 GB
container     20190503.centos     afebf959a752        About an hour ago   9.7 GB
-rw------- 1 root root 9,2G May  3 12:44 /var/tmp/container_20190503.centos.tar
-rw------- 1 root root 6,3G May  3 12:53 /var/tmp/container_20190503.desktop.tar

(большой размер обусловлен неблагоприятными «внешними» требованиями)

(также оценка размера Docker в общем пространстве слоев, кажется, немного расходится с окончательными тарболами)

Существует ли причина, по которой сохраненные образы Docker должны иметь разные размеры при сборке из одного и того же Dockerfile, но в разных версиях Docker / OS?

1 Ответ

0 голосов
/ 03 мая 2019

Попробуйте использовать docker history <image_id>, чтобы увидеть, какие слои в каждой сборке имеют разные размеры.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...