请问dockerfile里面不同功能的命令该分开几个RUN写还是写在一个RUN命令后面好?

发布于 2022-09-06 00:13:37 字数 220 浏览 13 评论 0

如题,请问dockerfile里面不同功能的命令该分开几个RUN写还是写在一个RUN命令后面好?
比如,我以Ubuntu为基础创建新镜像,一般都会先更新,然后再安装一些需要的命令。然后后面还要安装自己需要用的软件,这些命令都写在一个RUN后面好呢还是分开几个RUN命令写要好?谢谢!

还有个问题,怎么使dockerfile创建的镜像小些呢,我安装了anaconda以及几个软件生成的镜像竟然有6G。。。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

满天都是小星星 2022-09-13 00:13:37

尽量用一个RUN命令,因为每个Docker命令就是一个layer,还有就是基础镜像用小一点的,例如alpine这样的小体积基础镜像。详情可以参考 7 步精简 Docker 镜像几百MB(上)

扬花落满肩 2022-09-13 00:13:37

我个人觉得RUN命令写一条还是多条完全取决于这一条RUN命令是否会生成压根不需要的临时文件(比如编译,比如安装软件包带来的软件列表以及软件包缓存)。

强烈推荐看docker官方的最佳实践,新手必看: https://docs.docker.com/engin...

官方的最佳实践中,就总结了怎么命中缓存,怎么减少构建镜像的容量,强烈推荐细细研读一番。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文