Docker镜像打包程序混淆通常我们在用Docker镜像打包程序的时候总会有点困惑。到底最终的镜像分层封装***总结成程序镜像(即逐层From)合适,还是直接从Sourcecode打包程序产生最终镜像更合适?其实这并没有对错之分,选择还是要看程序包本身的情况。Dockerbuild的注意点如果接触过Docker,大家都知道Dockerbuild的使用方法,但是有几点容易忽略:Dockerfile开头的From和MAINTAINER实际上是一层镜像.如果From和MAINTAINER不一样,即使后面是同样的命令语句,也不会是同一个镜像。比如执行RUNecho"helloworld">>test.txt,如果MAINTAINER不同,这条语句的镜像层就会不同。原则上,如果每一层对应的父层不同,即使执行的命令相同,Docker也会生成新的一层镜像,比如下面两个Dockerfile文件Dockerfile1:FROMcentos:latestMAINTAINERduffqiu@gmail.comRUNecho”test">>hello.txtRUNecho"hello">test.txtDockerfile2:FROMcentos:latestMAINTAINERduffqiu@gmail.comRUNecho"hello">test.txtRUNecho"test">>hello.txt这两个文件的内容只是顺序两个RUN语句不一样,但是***它们生成的图像层是不一样的。你可以通过dockerhistory
