mirror of
https://github.com/yeasy/docker_practice.git
synced 2026-03-11 04:14:38 +00:00
Fix ascii figures
This commit is contained in:
@@ -96,25 +96,26 @@ Deleted: sha256:32770d1dcf835f192cafd6b9263b7b597a1778a403a109e2cc2ee866f74adf23
|
||||
|
||||
Docker 会检测镜像是否有容器依赖或其他标签指向,只有在确认为无用资源时才会真正删除存储层。
|
||||
|
||||
```
|
||||
docker rmi redis:alpine
|
||||
│
|
||||
▼
|
||||
┌───────────────────────────────────────────────────────────────┐
|
||||
│ 1. Untag:移除 redis:alpine 标签 │
|
||||
│ ↓ │
|
||||
│ 2. 检查是否还有其他标签指向这个镜像 │
|
||||
│ ├── 有 → 只 Untag,不删除 │
|
||||
│ └── 无 → │
|
||||
│ ↓ │
|
||||
│ 3. 检查是否有容器依赖 │
|
||||
│ ├── 有 → 报错,无法删除 │
|
||||
│ └── 无 → │
|
||||
│ ↓ │
|
||||
│ 4. 从上到下逐层删除,检查每层是否被其他镜像使用 │
|
||||
│ ├── 被使用 → 保留 │
|
||||
│ └── 未使用 → Deleted │
|
||||
└───────────────────────────────────────────────────────────────┘
|
||||
```mermaid
|
||||
flowchart TD
|
||||
Start(["docker rmi redis:alpine"]) --> Step1
|
||||
|
||||
subgraph Process ["删除流程"]
|
||||
direction TB
|
||||
Step1["1. Untag:移除 redis:alpine 标签"] --> Step2
|
||||
|
||||
Step2{"2. 检查是否还有其他标签指向此镜像"}
|
||||
Step2 -- "有" --> Keep1["只 Untag,不删除"]
|
||||
Step2 -- "无" --> Step3
|
||||
|
||||
Step3{"3. 检查是否有容器依赖"}
|
||||
Step3 -- "有" --> Error["报错,无法删除"]
|
||||
Step3 -- "无" --> Step4
|
||||
|
||||
Step4{"4. 从上到下逐层删除,检查每层是否被其他镜像使用"}
|
||||
Step4 -- "被使用" --> Keep2["保留该层"]
|
||||
Step4 -- "未使用" --> Delete["Deleted (删除该层)"]
|
||||
end
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
Reference in New Issue
Block a user