For investors
股价:
5.36 美元 %For investors
股价:
5.36 美元 %认真做教育 专心促就业
随着互联网的不断发展,程序员能够掌握和应用的软件编程开发工具也越来越多了,而本文我们就通过案例分析来简单了解一下,Docker架构与技术实践分享。
Docker架构
Docker使用客户端-服务器架构。Docker客户端与Docker守护进程通信,后者负责构建、运行和分发Docker容器等繁重的工作。Docker客户端和守护进程可以运行在同一个系统上,或者您可以将一个Docker客户端连接到一个远程Docker守护进程。Docker客户端和守护进程通过UNIX套接字或网络接口使用RESTAPI进行通信。
Docker守护进程
Docker守护进程(dockerd)侦听DockerAPI请求并管理Docker对象,如镜像、容器、网络和卷。
守护进程还可以与其他守护进程通信来管理Docker服务。
Docker客户端
Docker客户端(docker)是许多Docker用户与Docker交互的主要方式。当您使用诸如dockerrun之类的命令时,客户端将这些命令发送给dockerd,dockerd会执行这些命令。docker命令使用DockerAPI。Docker客户端可以与多个守护进程通信。
Docker注册表
Docker注册表存储Docker镜像。
DockerHub是一个任何人都可以使用的公共注册表,默认情况下Docker被配置为在DockerHub上寻找镜像。您甚至可以运行自己的私有注册表。如果您使用Docker数据中心(DDC),它包括Docker可信注册表(DTR)。
当您使用dockerpull或dockerrun命令时,所需的镜像将从配置的注册表中拉取。当您使用dockerpush命令时,您的镜像将被推送到您配置的注册表中。
Docker对象
当您使用Docker时,您正在创建和使用镜像、容器、网络、卷、插件和其他对象。本节简要介绍其中一些对象。
镜像(IMAGES)
镜像是一个只读模板,带有创建Docker容器的指令。镜像通常基于另一个镜像,并进行一些额外的定制。例如,您可以构建基于ubuntu镜像的镜像,但是安装了Apachewebserver和您的应用程序,以及运行应用程序所需的配置细节。
您可以创建自己的镜像,也可以只使用其他人创建并发布在注册表中的镜像。要构建自己的镜像,需要创建一个Dockerfile,其中包含一个简单的语法,用于定义创建镜像并运行它所需的步骤。Dockerfile中的每条指令都会在镜像中创建一个层。当你改变Dockerfile并重建镜像时,只有那些已经改变的层才会重建。这是使镜像与其他虚拟化技术相比如此轻量级、小巧和快速的原因之一。
容器(CONTAINERS)
容器是镜像的可运行实例。您可以使用DockerAPI或CLI创建、启动、停止、移动或删除容器。您可以将一个容器连接到一个或多个网络,将存储附加到该容器,甚至基于其当前状态创建一个新镜像。
默认情况下,容器与其他容器及其主机相对隔离良好。您可以控制容器的网络、存储或其他底层子系统与其他容器或主机的隔离程度。
容器是由它的镜像以及创建或启动它时提供给它的任何配置选项定义的。当删除容器时,对其状态的任何未存储在持久存储中的更改都会消失。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。