Coursera 笔记

Module 01 · Containers and Containerization

Docker ArchitectureDocker 架构简介

Coursera ↗

🎶 欢迎来到《Docker 架构》课程!

通过观看本视频,您将能够:

  • 识别 Docker 架构的各个组件
  • 解释 Docker 架构组件的功能
  • 描述 Docker 容器化的过程

 Docker 架构概览

Docker 的客户端-服务器架构提供了一个完整的应用环境,Docker 的主要组件包括 客户端、主机 和 注册表。

高层次概述

  1. Docker 客户端:您可以通过 Docker 命令行界面或 REST API 向 Docker 主机服务器发送指令。
  2. Docker 主机:Docker 主机包含名为 dockerd 的守护进程。守护进程监听 Docker API 请求或命令(如 docker run),并处理这些命令。
  3. Docker 守护进程:负责构建、运行和分发 Docker 容器的工作。
  4. 注册表:Docker 存储容器镜像的位置,通常使用公有或私有注册表。

 Docker 组件

  • Docker 客户端:用于与本地和远程 Docker 主机进行通信。
  • Docker 主机:包含并管理镜像、容器、命名空间网络、存储插件和附加组件。
  • Docker 守护进程(docker daemon):执行重负荷任务,管理容器的生命周期。
  • Docker 注册表:用于存储和分发容器镜像的地方。常见的公有注册表有 Docker Hub,而私有企业通常选择使用私有注册表。

 Docker 注册表

  • 公有注册表:如 Docker Hub,对所有人开放。
  • 私有注册表:出于安全考虑,企业通常选择使用私有注册表。注册表可以通过第三方提供商(如 IBM Cloud 容器注册表)托管,也可以自托管在私有数据中心或云环境中。

 镜像与注册表的交互

  1. 构建与推送镜像:开发人员使用自动化或构建管道将镜像推送到注册表。
  2. 拉取镜像:本地机器、云系统或本地系统可以从注册表中拉取镜像。

 容器化过程

创建容器镜像的步骤

  1. 使用现有的基础镜像或 Dockerfile。
  2. 执行 build 命令,创建带有名称的容器镜像。
  3. 使用 push 命令将镜像推送到注册表。
  4. 运行 命令:Docker 主机首先检查本地是否已经有该镜像,如果没有,Docker 客户端将连接到注册表并拉取镜像。

然后,docker daemon 使用该镜像创建并启动一个运行中的容器。


 总结

在本视频中,您学习了:

  • Docker 架构由 Docker 客户端、Docker 主机 和 注册表 组成。
  • 客户端通过命令和 REST API 与主机进行交互。
  • Docker 主机包含名为 dockerd 的守护进程,管理镜像、容器、命名空间、网络、存储插件和附加组件。
  • 容器化过程用于构建、推送和运行镜像,并最终创建运行中的容器。

🎶 感谢观看!