一、概述
Docker 是一个用于开发、发布和运行应用程序的开放平台。Docker 使您能够将应用程序与基础架构分离,以便您可以快速交付软件。使用 Docker,您可以像管理应用程序一样管理基础设施。通过利用 Docker 快速交付、测试和部署代码的方法,您可以显着减少编写代码和在生产环境中运行之间的延迟。这是官方解释
简单的来说,docker的作用就是把开发的应用以及依赖的环境打包成一个镜像,发布到远程仓库的工具,以便于拉到镜像后直接部署
二、docker解决了什么问题
1、解决环境的切换和配置
在过往经历中大家都可能经历过应用程序的部署,如果部署一个java应用,需要先部署jdk、mysql、tomcat等。通过docker可以同时把这些依赖的资源同时达到一个包中作为一个镜像,在不同的服务器上部署应用时,直接pull这个景象都可以运行
2、解决应用之间的隔离
docker容器之间是相互隔离的,不能直接进行通信,做到相互不影响
3、相同配置的服务器能够部署更多的应用,使服务器利用的极致
三、虚拟机和docker
左边是虚拟机右边是容器
传统的虚拟机先虚拟出一个完整的操作系统,然后在这个系统上安装和运行软件
容器内的应用程序直接运行在宿主机内,容器是没用自己的内核,也没有虚拟硬件,多个容器在一个服务器上运行ÿ



