更新Docker安装、镜像、Dockerfile和Compose等文档内容

This commit is contained in:
yeasy
2026-03-29 11:40:34 -07:00
parent 59bfe9cff6
commit 3bad07c41a
21 changed files with 265 additions and 8 deletions
+15
View File
@@ -1,5 +1,20 @@
## 7.4 CMD 容器启动命令
### 何时使用 CMD何时使用 ENTRYPOINT
在深入 CMD 的细节之前我们需要理解一个关键问题**CMD ENTRYPOINT 应该在什么时候使用**
这是 Dockerfile 使用中最常见的困惑之一简单的答案是
- **CMD**定义容器的默认命令如果用户在 `docker run` 时提供命令CMD 会被覆盖
- **ENTRYPOINT**定义容器的入口脚本通常用于启动应用的某个特定部分
**决策树**
1. **你的容器是否有不可变的启动逻辑** 比如需要先做一些初始化工作然后才运行应用 使用 ENTRYPOINT
2. **用户经常会在 `docker run` 时传入不同的命令吗** 使用 CMD让用户灵活覆盖
3. **大多数情况下你希望容器始终以相同的方式启动** 使用 ENTRYPOINT
更多细节见 [7.5 ENTRYPOINT 指令](7.5_entrypoint.md)
### 7.4.1 什么是 CMD
`CMD` 指令用于指定容器启动时默认执行的命令它定义了容器的 主进程