Lab学后总结
本页目录· 21 条
- 1. 一句话总结这个 Lab
- 2. 这个 Lab 实际做了什么
- 3. 每个核心组件有什么用
- VM
- Docker
- Image
- Container
- Port Mapping
- Volume Mount
- Dockerfile
- Docker Compose
- Redis
- 4. 用初学者类比解释
- 5. 重点区分容易混淆的概念
- Image 和 Container
- Dockerfile 和 docker-compose.yml
- docker run 和 docker compose up
- 宿主机端口和容器端口
- docker stop 和 docker rm
- docker compose stop 和 docker compose down
- 6. 这个 Lab 有什么实际用途
1. 一句话总结这个 Lab
这个 Lab 要教会你:如何用 Docker 把应用和运行环境一起打包、运行、暴露端口,并用 Docker Compose 管理多个互相依赖的服务。
2. 这个 Lab 实际做了什么
这次实验先创建了一台云端 Ubuntu VM,然后在这台机器上安装 Docker。接着你运行了最简单的 hello-world 容器,用它确认 Docker 能正常工作。
之后你学习了容器的基本管理:查看容器、查看镜像、进入容器、退出容器、后台运行容器、停止容器、删除容器。这里的重点不是背命令,而是理解“镜像是模板,容器是运行起来的实例”。
接下来,你启动了一个 Nginx 容器,把宿主机的 8080 端口映射到容器里的 80 端口,并把宿主机目录 /home/ubuntu/www 挂载到 Nginx 的网页目录。这样你修改宿主机上的 index.html,容器里的网页服务就能读到它。
然后你写了一个简单的 FastAPI 应用,创建 requirements.txt、my_script.py 和 Dockerfile,用 docker build 把它打包成自己的镜像,再用 docker run 启动成容器,并通过 8000 端口访问。
最后,你用 Docker Compose 同时管理两个服务:一个是自己构建的 FastAPI Web 服务,另一个是现成的 Redis 服务。FastAPI 每次被访问时都会去 Redis 里增加访问次数,这让你看到多个容器之间如何协作。
3. 每个核心组件有什么用
VM
VM 是你做实验的云端电脑。这个 Lab 里所有 Docker 命令都在这台 Ubuntu VM 上执行。
没有 VM,你就没有一个稳定的 Linux 环境来安装 Docker、运行容器和开放端口。
Docker
Docker 是容器运行和管理工具。它负责拉取镜像、创建容器、启动容器、停止容器、删除容器、构建镜像。
没有 Docker,你就不能用统一的方式把应用和依赖打包成镜像,也不能方便地在不同机器上运行同一个环境。
Image
Image 是“应用运行模板”。比如 ubuntu、nginx