我有几个项目在他们自己的 docker 项目中。随着时间的推移,我注意到当我需要设置一个新环境时,完成所需的时间越来越长。似乎每个版本都在 25-100mb 之间,并且每次都会下载所有版本。

什么可能导致这种情况,有没有更好的方法来做到这一点?

Pulling repository private.repo.com:8080/project
24e73aa61b9e: Pulling dependent layers
e9e06b06e14c: Download complete
a82efea989f9: Download complete
37bea4ee0c81: Download complete
07f8e8c5e660: Download complete
eebb8b8af862: Download complete
66dfa7610c51: Download complete
be9344bb178f: Download complete
f9b0b5922fcc: Download complete
d538871b66d9: Download complete
63b83602dd59: Download complete
4701d9c2b782: Download complete
e0867454dc78: Download complete
5f8f0c295506: Download complete
ff20a42d5239: Download complete
79093a41f7a4: Download complete
f67f10a60f8f: Download complete
9ae271a15a20: Download complete
b8e39263e460: Download complete
cd92a7abfb56: Download complete
3ab53402c585: Download complete
e6fbd8fbe1c8: Download complete
6b741d246738: Download complete
5d2de83d20bf: Download complete
72c062ac5a98: Download complete
8b9f7ca662b7: Download complete
10e830b030bf: Download complete
2f9c03ddb7f7: Download complete
3a7a81509db4: Download complete
11f4dab16ebd: Downloading [=======>                                           ] 15.68 MB/106 MB

最佳答案

您的 Dockerfile 中有太多命令。每个命令—— RUNENVEXPOSE 等——在生成的图像中创建一个新层,必须下载这些层中的每一个才能下载完整的图像。尝试通过将多个 RUN 命令与 RUN 组合成一个 && 来减少层数。

关于Docker 创建了太多镜像,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33878760/

10-12 01:14
查看更多