Clarify intro chapter

This commit is contained in:
yeasy
2026-04-18 20:25:29 -07:00
parent 029da9f946
commit 787c2adf57
4 changed files with 17 additions and 21 deletions
+10 -12
View File
@@ -45,9 +45,7 @@
### 1.3.2 Docker 如何解决这些问题
Docker 的出现为上述问题提供了完美的解决方案它通过 一次构建到处运行 的核心理念从根本上改变了软件交付的方式
#### 核心理念一次构建到处运行
Docker 的出现为上述问题提供了系统性的解决方案它通过 一次构建到处运行 的核心理念从根本上改变了软件交付的方式
```mermaid
flowchart LR
@@ -101,27 +99,27 @@ $ docker compose up
#### 3. 资源效率
Docker 容器共享宿主机内核无需为每个应用运行完整的操作系统以一台 64GB 内存的物理服务器为例
- **传统虚拟机方案**每个虚拟机都需要运行完整操作系统每个额外占用如 2GB 内存产生大量资源开销实际可用于应用的内存可能只有约 18GB
- **Docker 方案**容器直接共享宿主机系统需付出很少的基础开销OS 及引擎约 4GB即可将约 60GB 的内存全部用于实际应用
- **传统虚拟机方案**每个虚拟机都需要额外运行一套完整操作系统会带来持续的基础资源开销随着实例数增加可真正分配给业务进程的内存会被不断压缩
- **Docker 方案**容器直接共享宿主机系统保留宿主机和容器引擎的基础开销因此通常能把更多内存留给实际业务负载
```mermaid
flowchart TD
subgraph VM ["传统虚拟机方案 ❌"]
direction TB
Server1["物理服务器 (64GB 内存)"]
subgraph VMs ["可用应用内存: 约 18GB"]
subgraph VMs ["可用应用内存: 较少"]
direction LR
VM1["VM 1: 应用 1<br/>(含 2GB OS)"]
VM2["VM 2: 应用 2<br/>(含 2GB OS)"]
VM3["VM 3: 应用 3<br/>(含 2GB OS)"]
VM1["VM 1: 应用 1<br/>(含独立 OS 开销)"]
VM2["VM 2: 应用 2<br/>(含独立 OS 开销)"]
VM3["VM 3: 应用 3<br/>(含独立 OS 开销)"]
end
Server1 --- VMs
end
subgraph Docker ["Docker 方案 ✅"]
direction TB
Server2["物理服务器 (64GB 内存)<br/>含约 4GB OS及引擎配置"]
subgraph Containers ["可用应用内存: 约 60GB"]
Server2["物理服务器 (64GB 内存)<br/>含宿主 OS 与引擎基础开销"]
subgraph Containers ["可用应用内存: 更多"]
direction LR
C1["容器 1: 应用 1<br/>(按需分配)"]
C2["容器 2: 应用 2<br/>(按需分配)"]
@@ -160,7 +158,7 @@ Docker 可以在几乎任何平台上运行:
#### 6. 微服务架构的基石
现代微服务架构几乎都依赖容器技术Docker 让你可以
现代微服务实践大量采用容器技术作为交付基础Docker 让你可以先把每个服务标准化封装而在更大规模场景下通常还需要配合编排服务发现网络治理和可观测性体系一起落地
- **隔离服务**每个服务运行在独立容器中互不干扰
- **独立扩展**哪个服务负载高就单独扩展哪个