【回首往事、写给曾经的本身】docker
docker是一个好东西、可是官方文档的组织方式不太合理,它在介绍完成docker的基本概念以后,直接就操了一段dockerfile。在我当时还windows
是一个初学者的时候,dockerfile成为了学习路上最大的障碍。学习
现想回想起来一个主要的问题是,dockerfile太忽然了! 没有“起承转合”上来就直接“刚”。好在我比较的“坚韧不拔,不抛弃不放弃”最终测试
仍是get到了dockerfile的哲学.net
【从虚拟机到docker】server
在实现的软件开发上线过程当中,经常会遇到这样的事,测试同窗在开发环境上测试的的时候,软件的功能是正常的;可是它在测试环境上对软件开发
的功能进行测试的时候发现软件直接报错了,或是功能不对,最后以整个公司之力去排查问题,结果发现只是用了一个比较老的jar包;两样的问题文档
可能在生产环境上还要再发生一次。次数多了以后开发同窗开始变得不自信了,你问他这个版本的程序在客户的主机上能正常运行吗?他会说不太windows-server
肯定,这个要看状况 。get
我见过的比较大胆的作法,软件公司把本身的软件安装在虚拟机上,在测试经过后,他们发布的不是软件,而是是整个虚拟机。VMware真是的爱死
他们了。用户那里只要安装有对应版本的VMware就好了,他们经过发布VMware镜像的方式发行本身的软件,虽然看上去有点豆,
不能否认是解决了他们的问题。
上面的作法太笨重了,每次发布一个windows-server-2008 + .net framework + 软件 好几十个G呀!然而这几十个G中大多数的内容对于目标
软件来讲是无用的
docker 作了什么呢?事实上docker的作法和上面的发布vmware的镜像的作法差很少,只不过docker的作法减小了大量的无用内容的发布,这
这docker发布的镜像在体积上就要小上很多。
docker一直在强调它能作到“开发环境”与“生产环境”的彻底一致,
---