作者回复: 只是改了时间戳属性,实际并无必要。参考: https://stackoverflow.com/questions/52291579/what-does-touch-in-dockerfile-do
作者回复: 是的
作者回复: 也可以,这样的话,你执行docker build之前必须保证单页html/js文件已经在构建好了在规定目录中,这个依赖必须满足。
作者回复: 具体要看你的java程序的打包和运行方式,如果支持环境变量设置jvm内存,就可以在dockerfile中设置环境变量,比如,tomcat支持通过环境变量JAVA_OPTS设置jvm内存,那么可以在dockerfile中设:ENV JAVA_OPTS="-XX:PermSize=1024m -XX:MaxPermSize=512m" spring boot jar方式启动,也支持JAVA_OPTS环境变量传参。 参考: https://stackoverflow.com/questions/29923531/how-to-set-java-heap-size-xms-xmx-inside-docker-container
作者回复: 多阶段构建,中间的镜像容器,只是用于临时构建生成一些中间的artifacts,生成完这个中间容器就可以丢弃了。