Lesson 13: Docker 容器化基础

⏱ 約 15 分钟 6 个核心概念 8 条实战命令

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 上按顺序执行:

  1. 环境准备:确保 SSH 连通,有 sudo 权限
  2. 逐条实操:复制上方命令在终端运行,观察输出
  3. 变参数试:修改命令参数(如路径、端口、名称),看结果变化
  4. 组合用法:尝试管道、重定向组合多条命令

⚠️ 安全提醒:生产环境操作前,先在测试机/容器验证;重要数据操作前做快照/备份。


🧠 课后测验

完成上述练习后,做做测验巩固:

Q1. 构建镜像的命令是?

    1. docker build
    1. docker create
    1. docker make
    1. docker compile
👉 点击查看答案 **正确答案**:0. docker build **解析**:docker build -t name:tag . 从 Dockerfile 构建镜像。

Q2. 运行容器并映射端口?

    1. docker run -p 80:80 nginx
    1. docker start -p 80:80 nginx
    1. docker exec -p 80:80 nginx
    1. docker create -p 80:80 nginx
👉 点击查看答案 **正确答案**:0. docker run -p 80:80 nginx **解析**:docker run -p host:container 启动容器并映射端口。


📈 进度检查

  • [ ] 所有命令在 VPS 上跑通
  • [ ] 测验全对(或复盘错题)
  • [ ] 核心概念能用自己的话复述
  • [ ] 命令不看文档能敲出来

➡️ 下一课预告

Lesson 14 将继续深入运维核心技能,敬请期待!


本课程源码见:github.com/robert-kiyosaki-2024/linux-devops-101

💻 实战命令速查

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

🧠 课后测验

Q1. 构建镜像的命令是?

Q2. 运行容器并映射端口?