Docker为什么会出现?
Docker将开发--运维之间的问题,提出了解决方案!
Docker的思想来自于集装箱!
JRE上面运行了多个应用,可能会出现端口错误(端口冲突),原来的应用都是交叉的!
隔离:
Docker的核心思想!打包装箱!每个箱子都是互相隔离的!
例如:
一艘船要装不同的东西,如果要将水果和生化物品都放在船上,如果没有docker,放在一起水果将会变坏;如果有了docker,可以将水果和生化物品隔离起来,不会受影响。可以将一艘船的功能使用到最大化!
docker出现的本质:
所有的技术都是因为出现了一些问题,我们需要去解决,才去学习!
Docker的历史
在windows上使用linux系统时,需要先安装虚拟机(Vmware),然后在虚拟机上安装一个或多个linux系统,才能使用linux。
2010年,几个搞IT的年轻人,在美国成立了一家公司 dotCloud,做pass的云计算服务!LXC有关的容器技术!他们将自己的技术命名为Docker!
2013年,Docker开源!越来越多的人发现了docker的优点!docker每个月都会更新一个版本!
2014年4月9日,Docker1.0发布!
Docker为什么这么火?十分轻巧!
在容器技术出来之前,我们都是使用虚拟机技术!
虚拟机也是属于虚拟化技术,而Docker容器技术,也是一种虚拟化技术!
docker:隔离 , 镜像(最核心的环境 4m+jdk+mysql)十分的小巧,运行镜像即可!小巧!几个M,kb;秒级启动
聊聊Docker
Docker是基于go语言开发的,是开源的!
文档地址:https://docs.docker.com/ docker的文档很详细
Docker能做什么
虚拟化技术!
虚拟机技术的缺点:
1.资源占用十分多
2.冗余步骤多
3.启动慢
容器化技术
容器化技术不是模拟的一个完整的操作系统
Docker与虚拟化技术的不同:
传统虚拟机,虚拟出一个硬件,运行一个完整的操作系统,然后在系统上安装和运行软件
容器内的应用直接运行在宿主机的内容,容器是没有自己的内核的,叶没有虚拟硬件,所以轻便
每个容器间是相互隔离的,每个容器内都有一个属于自己的文件系统,互不影响。
DevOps(开发、运维)
应用更快速的交付和部署
传统:一堆帮助文档,安装程序
Docker:打包镜像发布测试,一键运行
更便捷的升级和扩缩容
使用Docker后,部署应用和搭积木一样!项目打包成一个镜像,扩展服务器A!
更简单的系统运维
更高效的计算资源利用
Docker是内核级别的虚拟化,可以在一个物理机上运行很多的容器实例!服务器的性能可以被压榨到极致。