在我看来,理想的尺寸只适用于你的确切情况。对于我和我现在的公司,我们没有大于1GB的图像。
如果您使用10GB大小的图像并且没有任何问题(是否有可能?!),那么对您来说就没问题。
作为问题案例的例子,您可以考虑这样的问题:“可以等待1-2小时,而我的图像正在通过互联网部署到远程服务器/开发机器吗?”,很可能这是不好。另一方面,当你没有面对这样的问题时,你根本没有任何问题。
另一个问题是,小图像启动几秒钟,巨大的启动几分钟。如果您使用它,也可以打破“热部署”计划。
这也可能是适当的,以检查为什么你的形象是如此之大,你可以阅读how layers work。 不久,如果你有2 Dockerfile:
第一:
RUN download something huge that weight 5GB
RUN remove something huge from above
第二:
RUN download something huge that weight 5GB &&\
remove something huge from above
其结果,第二图像是重量5GB小于第一个,而它们是相同内。
另一个诀窍是从一开始就使用小的基本图像。只是比较有区别的:
IMAGE NAME SIZE
busybox 1 MB
alpine 3 MB
debian 125 MB
ubuntu 188 MB
尽管Debian和Ubuntu几乎相同的内径,这将节省您从开始为50MB,将需要在今后的较少依赖。
感谢您的回答。然而,我的问题不是“我怎样才能缩小图像尺寸”,而是更像是“如果我的图像尽可能小,而且仍然是3GB,我会遇到什么问题......?” – user1873858