Lesson 13: Docker 容器化基础
Lesson 13: Docker 容器化基础
本课预计 15 分钟,涵盖 6 个核心概念、8 条实战命令、2 道巩固题。
🎯 学习目标
完成本课后,你将能够:
- 理解并应用 镜像
- 理解并应用 容器
- 理解并应用 Dockerfile
- 理解并应用 数据卷
- 理解并应用 网络
- 理解并应用 多阶段构建
- 在 VPS 上熟练运行相关命令
- 通过测验验证掌握程度
📚 核心概念
| 概念 | 说明 |
|---|---|
| 镜像 | 镜像 是本课核心技能点,实战中高频使用 |
| 容器 | 容器 是本课核心技能点,实战中高频使用 |
| Dockerfile | Dockerfile 是本课核心技能点,实战中高频使用 |
| 数据卷 | 数据卷 是本课核心技能点,实战中高频使用 |
| 网络 | 网络 是本课核心技能点,实战中高频使用 |
| 多阶段构建 | 多阶段构建 是本课核心技能点,实战中高频使用 |
💡 提示:建议在 VPS 上跟着敲一遍命令,肌肉记忆比死记硬背更管用。
💻 实战命令速查
docker run -d -p 80:80 nginx
作用:运行 Nginx 容器
docker run -d -p 8080:80 nginx
docker ps
作用:列出运行中容器
docker ps
docker images
作用:列出本地镜像
docker images
docker build -t myapp .
作用:构建镜像
docker build -t myapp:latest .
docker exec -it container_id bash
作用:进入容器
docker exec -it nginx bash
docker logs container_id
作用:查看日志
docker logs -f nginx
docker volume create data
作用:创建数据卷
docker volume create app-data
docker network create mynet
作用:创建网络
docker network create backend
🛠️ 动手练习
建议在你的 VPS 上按顺序执行:
- 环境准备:确保 SSH 连通,有 sudo 权限
- 逐条实操:复制上方命令在终端运行,观察输出
- 变参数试:修改命令参数(如路径、端口、名称),看结果变化
- 组合用法:尝试管道、重定向组合多条命令
⚠️ 安全提醒:生产环境操作前,先在测试机/容器验证;重要数据操作前做快照/备份。
🧠 课后测验
完成上述练习后,做做测验巩固:
Q1. 构建镜像的命令是?
-
- docker build
-
- docker create
-
- docker make
-
- docker compile
👉 点击查看答案
**正确答案**:0. docker build **解析**:docker build -t name:tag . 从 Dockerfile 构建镜像。Q2. 运行容器并映射端口?
-
- docker run -p 80:80 nginx
-
- docker start -p 80:80 nginx
-
- docker exec -p 80:80 nginx
-
- docker create -p 80:80 nginx
👉 点击查看答案
**正确答案**:0. docker run -p 80:80 nginx **解析**:docker run -p host:container 启动容器并映射端口。📈 进度检查
- [ ] 所有命令在 VPS 上跑通
- [ ] 测验全对(或复盘错题)
- [ ] 核心概念能用自己的话复述
- [ ] 命令不看文档能敲出来
➡️ 下一课预告
Lesson 14 将继续深入运维核心技能,敬请期待!
💻 实战命令速查
docker run -d -p 80:80 nginx
运行 Nginx 容器
docker run -d -p 8080:80 nginx
docker ps
列出运行中容器
docker ps
docker images
列出本地镜像
docker images
docker build -t myapp .
构建镜像
docker build -t myapp:latest .
docker exec -it container_id bash
进入容器
docker exec -it nginx bash
docker logs container_id
查看日志
docker logs -f nginx
docker volume create data
创建数据卷
docker volume create app-data
docker network create mynet
创建网络
docker network create backend