docker为了解决开发到运维上,环境配置等问题.无缝连接跨平台运作
1虚拟机占用资源多, 2.冗余步骤多 3.启动慢 4.硬件虚拟
比较Docker和虚拟机技术的不同:
传统虚拟机,虚拟出一条硬件,运行一个完整的操作系统,然后在这个系统上安装和运行软件
容器内的应用直接运行在宿主机的内容,容器是没有自己的内核的,也没有虚拟我们的硬件,所以 就轻便了
每个容器间是互相隔离,每个容器内都有一个属于自己的文件系统,互不影响
三要素:
仓库: docker hub 存放镜像的地方
镜像: 模板?
容器:使用镜像创建的实例
unionFS(联合文件系统)
分成镜像(共享)
kernel->centos->jdk8->tomcat