docker是什么?Docker中的镜像、容器、仓库有什么关系?

当站长朋友在进行建站时,一般都会选择虚拟主机来作为建站空间,如果你购买的虚拟主机数量比较多,在安装网站程序时,由于不同空间的操作系统是不同的,有时会出现程序错误的情况。而想要批量给虚拟主机安装程序又不出现错误,此时就需要使用docker。那么docker是什么?大家都清楚吗?创新互联告诉大家docker就是一种轻量级的虚拟机,它可以把系统环境都模仿下来,然后在不同的服务器上将模仿的环境复制出来,这样在安装程序时,就无需担心会出现错误的情况了。

创新互联公司主营章丘网站建设的网络公司,主营网站建设方案,成都app软件开发,章丘h5小程序制作搭建,章丘网站营销推广欢迎章丘等地区企业咨询docker是什么?
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
一个完整的Docker有以下几个部分组成:
1、DockerClient客户端;
2、Docker Daemon守护进程;
3、Docker Image镜像;
4、DockerContainer容器。

docker是如何工作的?
1、docker build
当我们写完dockerfile交给docker“编译”时使用这个命令,那么client在接收到请求后转发给docker daemon,接着docker daemon根据dockerfile创建出“可执行程序”image。
2、docker run
有了“可执行程序”image后就可以运行程序了,接下来使用命令docker run,docker daemon接收到该命令后找到具体的image,然后加载到内存开始执行,image执行起来就是所谓的container。
3、docker pull

其实docker build和docker run是两个最核心的命令,会用这两个命令基本上docker就可以用起来了。

Docker中的镜像、容器、仓库有什么关系?
(1)Docker镜像(image)
镜像是创建Docker容器的基础,Docker镜像类似于虚拟机镜像,可以把Docker镜像理解成一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)。镜像不包含任何动态数据,其内容在构建之后也不会被改变(只读)。
Docker提供了一套十分简单的机制来创建和更新现有的镜像。用户可以从网上下载一个已经做好的应用镜像,并通过命令直接使用。总之,应用运行是需要环境的,而镜像就是来提供这种环境。
例如:一个镜像可以完全包含了Ubuntu操作系统环境,可以把它称作一个Ubuntu镜像。镜像也可以安装了Apache应用程序(或其他软件),可以把它称为一个Apache镜像。
(2)Docker容器(Container)
镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。并且这些容器都是相互隔离、互不可见的。

docker是什么

Docker容器(Container)类似于一个轻量级的沙箱子(因为Docker是基于Linux内核的虚拟技术,所以消耗资源十分少),可以把每个容器看作一个简易版的Linux系统环境(包括了root用户权限、进程空间、用户空间和网络空间),以及与运行在其中的应用程序打包而成的应用盒子。Docker利用容器来运行和隔离应用。容器内的进程是运行在一个隔离的环境里,使用起来,就好像是在一个独立于宿主的系统下操作一样。这种特性使得容器封装的应用比直接在宿主运行更加安全。

镜像自身是只读的。容器从镜像启动的时候,Docker会在镜像的最上层创建一个可写层,镜像本身将保持不变。就像用ISO装系统之后,ISO并没有什么变化一样。
(3)Docker仓库(Repository)
Docker仓库(Repository)类似于代码仓库,是Docker集中存放镜像文件的场所。每个仓库集中存放某一类镜像,往往包括多个镜像文件,通过不同的标签(tag)来进行区分。例如存放Ubuntu操作系统镜像的仓库,称为Ubuntu仓库,其中可能包括14.04,12.04等不同版本的镜像。但是,如果需要在其它服务器上使用这个镜像,我们就需要一个集中的存储、分发镜像的服务,Docker Registry就是这样的服务。理解这个关系就是:一个Docker Registry中可以包含多个仓库(Repository);每个仓库可以包含多个标签(Tag);每个标签对应一个镜像。
根据存储的镜像公开分享与否,Docker仓库分为公开仓库(Public)和私有仓库(Private)两种形式。
目前,大的公开仓库是Docker Hub,存放了数量庞大的镜像供用户下载。国内的公开仓库包括Docker Pool等,可以提供稳定的国内访问。如果用户不希望公开分享自己的镜像文件,Docker也支持用户在本地网络内创建一个只能自己访问的私有仓库。

当用户创建了自己的镜像之后就可以使用push将它上传到指定的公有或则私有仓库。这样用户下次在另一台机器上使用该镜像时,只需将其从仓库pull下来就可以了。

上文已经给大家介绍了docker是什么,现在的docker就像是独立的操作系统,可以满足大家批量在不同的操作系统中安装程序,而且现在的docker技术已经十分成熟,很多公司或企业都在使用docker。如果你对docker还有不明白的地方,都可以到创新互联上找相关的技术人员来咨询一下具体的操作方法。
网页名称:docker是什么?Docker中的镜像、容器、仓库有什么关系?
浏览地址:http://scyanting.com/article/chpije.html