<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Docker on Blog</title><link>https://blog.iam041.com/tags/docker/</link><description>Recent content in Docker on Blog</description><generator>Hugo</generator><language>zh_CN</language><lastBuildDate>Thu, 18 Jun 2026 21:30:00 +0800</lastBuildDate><atom:link href="https://blog.iam041.com/tags/docker/index.xml" rel="self" type="application/rss+xml"/><item><title>Docker知识点详解</title><link>https://blog.iam041.com/posts/docker%E7%9F%A5%E8%AF%86%E7%82%B9%E8%AF%A6%E8%A7%A3/</link><pubDate>Thu, 18 Jun 2026 21:30:00 +0800</pubDate><guid>https://blog.iam041.com/posts/docker%E7%9F%A5%E8%AF%86%E7%82%B9%E8%AF%A6%E8%A7%A3/</guid><description>&lt;p&gt;Docker 是一个基于 Linux 内核能力实现的开源应用容器引擎，依托 &lt;strong&gt;命名空间（Namespaces）&lt;/strong&gt; 与 &lt;strong&gt;控制组（cgroups）&lt;/strong&gt; 实现轻量级进程隔离，支持将应用程序及其依赖项统一打包为标准化容器镜像，实现跨环境的敏捷交付与一致性运行。&lt;/p&gt;&#10;&lt;p&gt; &lt;/p&gt;&#10;&lt;h2 id="1-概述与核心机制"&gt;1. 概述与核心机制&lt;/h2&gt;&#10;&lt;hr&gt;&#10;&lt;h3 id="11-核心特性与虚拟化差异"&gt;1.1 核心特性与虚拟化差异&lt;/h3&gt;&#10;&lt;p&gt;容器技术与传统虚拟机（VM）在底层实现上有本质区别：&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;进程级轻量隔离&lt;/strong&gt;：容器共享宿主机的操作系统内核，不需要像虚拟机那样虚拟化完整的 Guest OS 与虚拟硬件，秒级启动且系统资源开销极小。&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;独立的文件系统视图&lt;/strong&gt;：容器内部拥有独立的用户态文件系统环境（例如 /bin、/etc、/usr、/app），能够独立执行 Linux 用户态程序与服务进程。&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;环境交付一致性&lt;/strong&gt;：通过将代码、运行依赖与环境变量整体封装，实现“一次构建，随处运行”，消除开发、测试与生产环境不一致的痛点。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h3 id="12-windows-与-wsl2-协同运行模式"&gt;1.2 Windows 与 WSL2 协同运行模式&lt;/h3&gt;&#10;&lt;p&gt;在 Windows 环境下，Docker Desktop 并非直接运行于 Windows 原生内核之上，而是深度集成并依赖 WSL2（Windows Subsystem for Linux 2）提供的真实 Linux 内核环境：&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;架构协同关系&lt;/strong&gt;：Windows 充当宿主操作系统；WSL2 虚拟机实例提供 Linux 内核调用支持；Docker Desktop 统一管理 Docker 守护进程引擎与图形化控制台。&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;最佳工程实践&lt;/strong&gt;：建议将项目代码与挂载文件直接存放在 WSL 的 Linux 本地文件系统内（如 /home/user/&amp;hellip;），避免跨跨系统 9P 文件协议读写带来的显著性能损耗。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt; &lt;/p&gt;&#10;&lt;h2 id="2-架构与核心概念"&gt;2. 架构与核心概念&lt;/h2&gt;&#10;&lt;hr&gt;&#10;&lt;p&gt;Docker 采用标准的 C/S（客户端/服务端）架构，客户端工具与后端守护进程通过 REST API、UNIX 套接字或网络接口进行交互。&lt;/p&gt;&#10;&lt;h3 id="21-架构角色与核心概念"&gt;2.1 架构角色与核心概念&lt;/h3&gt;&#10;&lt;table&gt;&#10;&#9;&lt;thead&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th style="text-align: left"&gt;角色/组件&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th style="text-align: left"&gt;描述与核心职责&lt;/th&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/thead&gt;&#10;&#9;&lt;tbody&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td style="text-align: left"&gt;&lt;strong&gt;Docker Client&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td style="text-align: left"&gt;命令行交互工具（docker CLI），负责向服务端分发构建、运行与管理指令。&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td style="text-align: left"&gt;&lt;strong&gt;Docker Daemon (dockerd)&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td style="text-align: left"&gt;常驻后台的守护进程，负责管理镜像、容器、存储卷与虚拟网络等核心对象。&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td style="text-align: left"&gt;&lt;strong&gt;镜像（Image）&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td style="text-align: left"&gt;包含了应用程序及其完整运行依赖的只读层叠模板，用于生成容器运行时实例。&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td style="text-align: left"&gt;&lt;strong&gt;容器（Container）&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td style="text-align: left"&gt;镜像的可运行实例，在镜像只读层之上附加读写层，具备隔离的网络与运行时环境。&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td style="text-align: left"&gt;&lt;strong&gt;镜像仓库（Registry）&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td style="text-align: left"&gt;集中存储与分发容器镜像的中心服务，分为公有仓库（如 Docker Hub）与私有仓库（如 Harbor）。&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td style="text-align: left"&gt;&lt;strong&gt;Dockerfile&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td style="text-align: left"&gt;声明镜像构建流程的文本配置文件，逐层定义基础环境、依赖安装与启动参数。&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td style="text-align: left"&gt;&lt;strong&gt;Docker Compose&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td style="text-align: left"&gt;用于定义和编排多容器协同运行的工具，通过声明式 YAML 文件管理全栈服务。&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&lt;h3 id="22-dockerfile-与-compose-的职责划分"&gt;2.2 Dockerfile 与 Compose 的职责划分&lt;/h3&gt;&#10;&lt;p&gt;两者处于不同层级的交付链路中，职责边界清晰：&lt;/p&gt;</description></item></channel></rss>