Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
docker的三大核心概念:
镜像,容器,仓库
docker镜像类似于虚拟机镜像,可以将它理解为一个只读的模版。镜像是创建容器的基础。
docker容器类似于一个轻量级的沙箱,docker利用容器来运行和隔离作用。
docker仓库类似于代码仓库,是docker集中存放镜像文件的藏所。
什么是容器?
容器是对应用程序及其依赖关系的封装。
容器的优点:
1.容器与主机的操作系统共享资源,效率高,性能损耗低。
2.容器具有可移植性。
3.容器是轻量级的。
4.不用管环境差异以及安装配置的繁琐,和依赖关系。
容器与虚拟机的比较
虚拟机的目的是要完整的模拟另外一个环境,而容器的目的自然是使应用程序能够移植,并把所有依赖关系包含进去。
特性 | 容器 | 虚拟机 |
启动速度 | 秒级 | 分级 |
性能 | 接近原生 | 较弱 |
内存代价 | 很小 | 较多 |
硬盘使用 | MB | GB |
运行密度 | 单机支持上千个容器 | 几十个 |
隔离性 | 安全隔离 | 完全隔离 |
迁移性 | 优秀 | 一般 |
docker与容器
Docker利用现有的Linux容器技术,以不同的方式将其封装及扩展 只要是通过提供可移植的镜像,以及一个用户友好的接口 来创建一套完整的容器创建及发布方案。
docker分为两部分:
1.负责创建与运行容器的docker引擎,docker引擎提供了一个快速且便捷的接口来运行容器。
2.用来发布容器的云服务docker hub,docker hub 提供大量的公共容器镜像以供下载。
docker在开发和运维中的优势:
1.更快捷的交付和部署
2.更高效的资源利用
3.更轻松的迁移和扩展
4.更简单的更新和管理
此随笔乃本人学习记录,如有疑问欢迎在下面评论,转载请标明出处。
如果对您有帮助请动动鼠标右下方给我来个赞,您的支持是我最大的动力。