Dockerfile中multi-stage(多阶段构建)详解
接着把构建好的应用程序部署到生产环境用的镜像中:把上面的内容保存到 Dockerfile 文件中。下面我们看看 docker 针对这种情况提供的解决方案:multi-stage。这个 Dockerfile 文件的特点是同时存在多个 FROM 指令,每个 FROM 指令代表一个 stage 的开始部分。但是这个语法糖还好很诱人的,现在我们维护一个结构简洁的 Dockerfile 文件就可以了!其实我们是可以为 stage 命名的,然后就可以通过名称来引用 stage 了。通过使用命名的 stage, Dockerfile 更容易阅读了。Dockerfile 中的 multi-stage 虽然只是些语法糖,但它确实为我们带来了很多便利。尤其是减轻了 Dockerfile 维护者的负担。需要注意的是旧版本的 docker 是不支持 multi-stage 的,只有 17.05 以及之后的版本才开始支持。
用户评论