两种方式创建docker镜像的启动容器时区别介绍(总结篇)
Docker  /  管理员 发布于 7年前   169
Docker是建立在Linux内核基础上的,在目前的主流Linux系统中,都已经原生支持了Docker且使用体验也最好,当然,在Windows平台和MacOS系统中也支持Docker,只是需要使用类似Boot2Docker等虚拟化工具来提供Linux支持。
下面重点给大家介绍基于两种创建docker镜像的启动容器时区别,感兴趣的朋友可以跟着小编一起学习!
1.凡是用docker commit生成的镜像启动的时候可以加载一个启动自己应用的脚本,例如:
docker run -d -P tomcat7.0b:jdk1.6 /run.sh
最后的/run.sh就是启动tomcat应用,表示启动该容器时顺便启动tomcat应用。否则只是启动了容器,并没有启动自己的应用。
run.sh内容如下:
#!/bin/bash/usr/sbin/sshd -D &exec ${CATALINA_HOME}/bin/catalina.sh run
而且注意,就是现在这个容器是基于Docfile文件生成的镜像实例化,如果你进行操作之后,然后使用docker commit来基于这个容器生成新镜像,那么基于新镜像生成的容器,还是一样要加载一个启动自己应用的脚步。
2.用Docfile文件生成的镜像时,来启动容器就不用再加这个脚本了
FROM sshd3:ubuntuMAINTAINER waitfish from dockerpool.com([email protected])ENV DEBIAN_FRONTEND noninteractiveRUN echo "Asia/Shanghai" > /etc/timezone && dpkg-reconfigure -f noninteractive tzdataRUN apt-get install -yq --no-install-recommends wget pwgen ca-certificates && apt-get clean && rm -rf /var/lib/apt/lists/*ENV CATALINA_HOME /tomcat ENV JAVA_HOME /jdkADD apache-tomcat-7.0.69 /tomcatADD jdk1.6.0_45 /jdk#ADD create_tomcat_admin_user.sh /create_tomcat_admin_user.shADD run.sh /run.shRUN chmod +x /*.shRUN chmod +x /tomcat/bin/*.shEXPOSE 8080CMD ["/run.sh"]
因为最后一句CMD就是表示启动容器时,调用这个脚本。
以上所述是小编给大家介绍的两种创建docker镜像的启动容器时区别总结,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对站的支持!
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号