二、容器介绍

  • 容器介绍
  • 虚拟机与容器的区别
  • 组成部分
  • Docker特性
  • 容器优势


容器介绍

容器是一种轻量级、可移植的软件打包技术,让应用程序可以在几乎任何地方以相同的方式运行。开发人员在自己本地环境创建并测试好的容器,后面无须任何修改就能在生产系统的物理服务器、虚拟机、公有云主机上运行。

虚拟机与容器的区别

虚拟机

虚拟机和容器优缺点 虚拟机容器是什么意思_运维

容器

虚拟机和容器优缺点 虚拟机容器是什么意思_docker_02

Hypervlsor:虚拟机监视器,是用来建立与执行虚拟机器的软件、固件或硬件

Guest OS:VM(虚拟机)里的系统(OS)

Host OS:主机里的系统(OS)

特性

虚拟机

容器

启动

分钟级

秒级

磁盘使用

一般为GB

一般为MB

性能

弱于原生

接近原生

系统支持量

单机一般为几十个

单机支持上千个容器

由于所有容器共享同一个Host OS,所以容器在体积上要比虚拟机小。启动容器不需要启动整个操作系统,所以容器部署和启动速度更快、开销更小、也更容易迁移。

组成部分

  • 应用程序本身
  • 依赖

Docker特性

  • 打包对象

任何软件及依赖

  • 硬件依赖

几乎所有平台,物理机、虚拟机、公有云、私有云都可以运行

  • 隔离性

资源、网络、库都是隔离的

  • 自动化

提供run、start、stop等标准化动作,非常适合自动化

  • 高效性

轻量级,能够快速启动和迁移

  • 职责分工

开发人员只需关注怎么写代码

运维人员只需关注如何配置基础环境

容器优势

开发人员

  • Build Once(建造一次)
  • RUn Anywhere(到处运行)

只需为应用创建一次运行环境,打包成容器后可在其他机器上运行,容器环境与所在Host环境是隔离的,更快更简单。

运维人员

  • Configure Once(配置一次)
  • Run Anything(做任何事)

只需配置好标准的runtime环境,服务器就可运行任何容器。

让运维人员的工作变得更加高效、一致和可重复,消除了开发、测试、生产环境的不一致性。