第4期 docker是什么

124 阅读2分钟

起源

环境配置特别麻烦,我写了一个软件,在我的电脑是正常运行的,但是到了你的电脑就不能运行了。操作系统、各种引用的库、各种依赖等。于是人们想有没有简单的方式,我安装软件的时候,把你的环境一起复制过来,那么我的环境配置就和你一模一样了。

虚拟机

这是带环境安装的一种方法。对于底层来说,虚拟机只是一个普通的文件,但是对于运行在虚拟机上的软件的时候,就像运行在真实的系统一模一样。 但也会有几个缺点。

资源占用多

有时候运行软件只需要1MB,但是虚拟机却需要几百MB才能运行

冗余步骤多

虚拟机是完整的操作系统,一些系统级别的操作步骤,往往无法跳过,比如用户登录。

启动慢

启动虚拟机的时间等同于启动操作系统的时间

Linux容器

不像虚拟机是从操作系统的级别进行隔离,而是对进程进行隔离。在进程外围有一层保护罩,软件接触到的资源都会通过保护罩去进行操作。就不用担心底层操作系统的不同而执行失败。就像带了一个翻译,无论我说的什么话,对外他都能够根据不同的语言环境进行翻译。相比虚拟机有以下的有点。

启动快

虚拟机是启动一个操作系统,Linux容器是启动一个进程

资源占用少

虚拟机是占用着一个操作系统的资源,Linux容器是占用需要的资源,容器间可以共享资源。

体积小

虚拟机是整个操作系统的打包,Linux容器是需要用到的组件的打包。

Docker是什么

Docker属于Linux容器的一种封装,提供简单易用的容器使用接口。 Docker将应用程序与该程序的依赖打包在一个文件,当运行时就会生成一个虚拟容器,应用程序在这个虚拟容器中运行,就好像在相同的并真实的物理机上运行。

转载自 Docker入门教程