Docker (7)

88 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第30天,点击查看活动详情

之前一直在整理 Docker 容器技术相关的内容,今天继续,主要涉及一下 Docker 中各组件之间是如何协调运行的,最后可能会再涉及一些 Docker 的常用命令,这个常用命令之前也理过一些,今天再多整一些.....

Docker 组件是如何协作运行容器

以之前说过的 Hello World 为例,体会 Docker 各组件之间是如何相互协作的。 容器启动过程如下:

  • Docker 客户端执行 docker run 命令
  • Docker daemon 发现本地没有 Hello World 镜像
  • daemon 从 Docker Hub 下载镜像
  • 下载完成,镜像 Hello World 被保存到本地
  • Docker daemon 启动容器

具体操作流程如下图:

image.png 我们可以通过docker images 可以查看到 Hello World 已经下载到本地:

image.png

我们可以通过 docker ps 或者 docker container ls 显示正在运行的容器,我们可以看到, Hello World 在输出提示信息以后就会停止运行,容器自动终止,所以我们在查看的时候没有发现有容器在运行:

image.png

我们把 Docker 容器的工作流程解析的十分清楚了,我们大体可以知道 Docker 组件协作运行容器可以分为以下几个过程:

  1. Docker 客户端执行 docker run 命令;
  2. Docker daemon 发现本地没有我们需要的镜像;
  3. daemon 从 Docker Hub 下载镜像;
  4. 下载完成后,镜像被保存到本地;
  5. Docker daemon 启动容器。

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

今天就先学习到这里吧,主要剖析了一下 Docker 组件是如何协作运行容器的,至于 Docker 的常用命令,下次再接着整理吧....
希望本文能够帮到你,如有错误,望指正!
我向你敬礼啊,Salute!