mirror of
https://github.com/yeasy/docker_practice.git
synced 2026-03-11 20:31:18 +00:00
Add more content and fix format
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# 12.2 命名空间(Namespace)
|
||||
## 12.2 命名空间
|
||||
|
||||
命名空间(Namespace)是 Linux 内核的一个强大特性,为容器提供了隔离的运行环境。
|
||||
命名空间是 Linux 内核一个强大的特性。每个容器都有自己单独的命名空间,运行在其中的应用都像是在独立的操作系统中运行一样。命名空间保证了容器之间彼此互不影响。
|
||||
|
||||
## 12.2 什么是 Namespace
|
||||
|
||||
@@ -85,8 +85,6 @@ NET Namespace 负责网络栈的隔离,包括网卡、路由表和 iptables
|
||||
|
||||
#### NET 隔离效果
|
||||
|
||||
如下代码块所示,展示了相关示例:
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
subgraph Host ["宿主机"]
|
||||
@@ -122,8 +120,6 @@ MNT Namespace 负责文件系统挂载点的隔离,确保容器看到独立的
|
||||
|
||||
#### MNT 隔离效果
|
||||
|
||||
如下代码块所示,展示了相关示例:
|
||||
|
||||
```bash
|
||||
宿主机文件系统: 容器内看到的:
|
||||
/ / ← 容器的根目录
|
||||
@@ -204,8 +200,6 @@ USER Namespace 允许将容器内的用户 ID 映射到宿主机的不同用户
|
||||
|
||||
#### USER 隔离效果
|
||||
|
||||
如下代码块所示,展示了相关示例:
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
subgraph Container ["容器内"]
|
||||
|
||||
@@ -30,8 +30,6 @@ Docker 选择联合文件系统作为其存储驱动,主要基于以下几个
|
||||
|
||||
#### 1. 镜像分层复用
|
||||
|
||||
如下代码块所示,展示了相关示例:
|
||||
|
||||
```mermaid
|
||||
flowchart TD
|
||||
Nginx["nginx:alpine"] --> Alpine["alpine:3.19 (共享基础层)"]
|
||||
@@ -192,8 +190,6 @@ $ docker inspect nginx:alpine --format '{{json .GraphDriver.Data}}' | jq
|
||||
|
||||
#### 1. 减少镜像层数
|
||||
|
||||
如下代码块所示,展示了相关示例:
|
||||
|
||||
```docker
|
||||
## ❌ 每条命令创建一层
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## 12.6 Docker 网络实现
|
||||
## 12.6 网络
|
||||
|
||||
Docker 的网络实现其实就是利用了 Linux 上的网络命名空间和虚拟网络设备 (特别是 veth pair)。建议先熟悉了解这两部分的基本概念再阅读本章。
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## 12.7 本章小结
|
||||
## 本章小结
|
||||
|
||||
| Namespace | 隔离内容 | 一句话说明 |
|
||||
|-----------|---------|-----------|
|
||||
|
||||
Reference in New Issue
Block a user