看完这篇,Docker你就入门了

作者:微信小助手

发布时间:2021-03-29T08:11:06

喜欢就关注我们吧!

在计算机技术日新月异的今天, Docker在国内发展的如火如荼,特别是在一线互联网公司,Docker的使用是十分普遍的,在理解docker之前,我们先熟悉两个概念,容器和虚拟机。


一、容器与虚拟机


传统的虚拟机有VMware, VirtualBox ,它们需要模拟整台机器包括硬件,每台虚拟机都需要有自己的操作系统,虚拟机一旦开启,预分配给它们的资源将全部被占用。每一台虚拟机包括应用,必要的二进制和库,以及一个完整的用户操作系统。

而容器技术是和我们的宿主机共享硬件资源及操作系统,可以实现资源的动态分配。容器包含应用和其所有的依赖包,但是与其他容器共享内核。容器在宿主机操作系统中,在用户控件以分离的进程运行。

容器技术是实现操作系统虚拟化的一种途径,可以让您在资源受到隔离的进程中运行应用程序及其依赖关系。通过使用容器,我们可以轻松打包应用程序的代码、配置和依赖关系,将其编程容易使用的构建块,从而实现环境一致性、运营效率、开发人员生产力和版本控制等诸多目标。容器帮助保证应用程序快速、可靠、一致性部署,其间不受部署环境的影响。容器还赋予我们对资源更多的精细化控制能力,让我们的基础设施效率更高、通过下面这张图我们可以很直观的反映出二者的区别。

Docker属于Linux容器的一种封装,提供简单易用的容器使用接口。它是目前最流行的Linux容器解决方案。

Linux容器不是模拟一个完整的操作系统,而是对进程进行隔离,相当于在正常进程的外面套了一个保护层。对于容器里面的进程来说,它接触到的各种资源都是虚拟的,从而实现与底层系统的隔离。

Docker将应用程序与该程序的依赖,打包在一个文件里。运行这个文件,就会生成一个虚拟容器,程序在这个虚拟容器里运行,就好像在真实的物理机上运行一样,有了Docker,就不用担心环境问题。

总体来说,Docker的接口相当简单,用户可以方便的创建和使用容器,把自己的应用放入容器,容器还可以进行版本管理,复制,分享,修改,就像管理代码一样。


二、Docker的优势


1、Docker启动快速,属于秒级别。虚拟机通常需要几分钟去启动。

2、Docker需要的资源更少,Docker在操作系统级别进行虚拟化,Docker容器和内核交互,几乎没有性能损耗,性能优于通过 Hypervisor 层与内核层的虚拟化

3、Docker更轻量,Docker的架构可以共用一个内核与共享应用程序库,所占内存极小。同样的硬件环境,Docker运行的镜像数远低于虚拟机数量,对系统的利用率非常高<