为了账号安全,请及时绑定邮箱和手机立即绑定

dockerfile基于之前的镜像构建了一个性的镜像,原来的镜像的dockerfile中指定的CMD不执行了

dockerfile基于之前的镜像构建了一个性的镜像,原来的镜像的dockerfile中指定的CMD不执行了

MYYA 2019-01-17 09:16:46
1、原来的dockerfile,基于centos:7构建一个安装了jdk的镜像FROM centos:7 MAINTAINER wenyoulong <3424675994@qq.com> ENV JAVA_HOME /usr/local/java/jdk1.8.0_181ENV JRE_HOME ${JAVA_HOME}/jreENV CLASSPATH .:${JAVA_HOME}/lib:${JRE_HOME}/libENV PATH ${JAVA_HOME}/bin:$PATH COPY jdk-8u181-linux-x64.tar.gz /java/jdk-8u181-linux-x64.tar.gzCOPY setup.sh /java/setup.sh CMD ["sh", "/java/setup.sh"] 2、基于刚刚构建的镜像构建一个安装了tomcat的新镜像FROM my-java:latest MAINTAINER wenyoulong <3424675994@qq.com> COPY apache-tomcat-8.5.33.tar.gz /tomcat/apache-tomcat-8.5.33.tar.gzCOPY setup.sh /tomcat/setup.sh CMD ["sh", "/tomcat/setup.sh"] 3、构建完成后运行tomcat这个镜像发现之前的那个镜像指定的CMD没有执行
查看完整描述

2 回答

?
largeQ

TA贡献2039条经验 获得超7个赞

这是对的,CMDdocker run执行的脚本,是运行状态的配置,所以你FROM之后,自然被你新的CMD配置覆盖掉了

查看完整回答
反对 回复 2019-02-12
  • 2 回答
  • 0 关注
  • 785 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信