内容简介:随着云产品和云服务的普及,各种各样的相关技术开始层出不穷,Docker作为一门热门的技术被越来越多的公司和开发者所使用,本篇文章主要为大家简单介绍一下Docker,帮助大家理解一下Docker中常用的一些概念,非常适合初学者。Docker是一个开源的应用容器引擎,基于Go语言并遵从Apache2.0协议开源,Docker主要是对进程进行封装隔离,属于操作系统层面的虚拟化技术,由于隔离的进程独立于宿主和其它隔离的进程,因此称其为容器。基于Docker开发者们可以将应用程序以及依赖包一起打包到一个轻量级,可移植
随着云产品和云服务的普及,各种各样的相关技术开始层出不穷,Docker作为一门热门的技术被越来越多的公司和开发者所使用,本篇文章主要为大家简单介绍一下Docker,帮助大家理解一下 Docker 中常用的一些概念,非常适合初学者。
Docker 简介
Docker是一个开源的应用容器引擎,基于 Go 语言并遵从Apache2.0协议开源,Docker主要是对进程进行封装隔离,属于操作系统层面的虚拟化技术,由于隔离的进程独立于宿主和其它隔离的进程,因此称其为容器。基于Docker开发者们可以将应用程序以及依赖包一起打包到一个轻量级,可移植的容器中,然后发布到任何流行的 Linux 机器和Windows Server(目前支持的Windows Server版本为Windows 2016,Windows 2019和Windows 10)上,也可以实现虚拟化。
补充:针对Win7和Win8系统来说也可以利用Docker toolbox进行安装,docker toolbox是一个 工具 集,主要包含:
Docker CLI客户端:用来运行Docker引擎创建镜像和容器
Docker Machine: 可以让你在windows的命令行中运行docker引擎命令
Docker compose:用来运行docker-compse命令
Kitematic:Docker的GUI版本
Docker QuickStart shell:一个已经配置好Docker的命令行环境
Oracle VM Virtualbox:虚拟机
当然目前Docker已经有了Docker for windows的专业安装包,因此我们主要针对最新的Docker for windows来学习。
Docker架构
Docker使用客户端-服务器(C/S)架构模式,使用远程API来管理和创建Docker容器。Docker容器通过镜像(Image)来创建。容器相当于是镜像的一个实例,容器与镜像的关系类似于面向对象编程中对象与类的关系。
Docker容器与传统虚拟化方式的区别
传统虚拟机技术是虚拟出一套硬件后,在其上运行一个完整操作系统,在该系统上再运行所需应用进程;而容器内的应用进程直接运行于宿主的内核,容器内没有自己的内核,而且也没有进行硬件虚拟。因此容器要比传统虚拟机更为轻便,快捷。
Docker 容器中常用的术语
Docker镜像(Images): Docker镜像是用来创建Docker容器的模板。Docker镜像是一个特殊的文件系统,提供了容器运行时所需的程序,库,资源,配置等等。Docker Image是容器的基础,Docker容器的运行都是基于Image运行的,Docker镜像中包含了运行环境和配置,所以Docker可以简化部署多种应用实例工作,比如Web应用,后台应用,数据库应用,大数据应用比如Hadoop集群,消息队列等等都可以打包成一个镜像部署。
Docker 容器(Container): 容器是独立运行的一个或一组应用。镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建,启动,停止,删除,暂停等。容器的实质是进程,但与直接在宿主执行的进程不同,容器进程运行于属于自己的独立的命名空间。 实际开发的过程中大家要注意一点:容器不应该向其存储层内写入任何数据,容器存储层要保持无状态化。
Docker仓储(Registry): Docker Registry用来保存镜像,可以理解为代码控制中的代码仓储。Docker Hub(https://hub.docker.com)提供了庞大的镜像集合供使用。镜像构建完成后,可以很容易的在当前宿主机器上运行,但是,如果需要在其它服务器上使用这个镜像,我们就需要一个集中的存储,发布镜像的服务,Docker Registry就是这样的服务。一个Docker Registry中可以包含多个仓储(Repository),每个仓储可以包含多个标签(Tag),每个标签对应一个镜像。
以上就是初学Docker时大家会遇到的概念性相关的知识,希望会对大家对Docker的学习和理解有所帮助。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。