Docker 入门教程
镜像、容器、卷与 Compose 图解
Docker 是一种轻量级的容器化技术,能够快速部署应用并保证环境一致性。本文整理了 Docker 基础操作、目录挂载、卷映射以及 Docker Compose 使用方法,并用图示帮助理解核心概念。
一、Docker 镜像管理
镜像是容器的静态模板,类似于虚拟机的快照。
下载镜像
docker pull nginx
查看本地镜像
docker images
删除镜像
docker rmi <镜像ID或名字>
镜像是静态文件,可以用来创建多个容器实例。
二、Docker 容器管理

容器是镜像的运行实例,是 Docker 的核心概念。
查看容器
docker ps # 查看运行中容器
docker ps -a # 查看所有容器,包括停止的
删除容器
docker rm <容器ID或名字>
启动容器
docker run -d --name mynginx -p 80:80 nginx
参数说明:-d 后台运行,--name 容器名字,-p 80:80 端口映射。
三、目录挂载与卷映射
目录挂载和卷映射用于持久化数据和共享文件。
目录挂载
docker run -d --name mynginx -p 80:80 -v $(pwd)/html:/usr/share/nginx/html nginx
宿主机的
./html目录挂载到容器 Nginx 根目录,更新宿主机文件会同步到容器。
卷映射
docker volume create mydata
docker run -d --name mynginx -p 80:80 -v mydata:/usr/share/nginx/html nginx
卷是 Docker 管理的持久化存储,跨容器共享且容器删除后数据保留,更适合生产环境。
四、Docker Hub
Docker Hub 是官方镜像仓库。常用操作:
docker login # 登录 Docker Hub
docker search nginx # 搜索镜像
docker push <用户名>/<镜像名> # 上传镜像
五、Docker Compose 多容器管理
当有多个容器同时运行时,Docker Compose 可以通过 YAML 文件进行管理。

示例 docker-compose.yml
version: "3.8"
services:
web:
image: nginx
ports:
- "80:80"
volumes:
- ./html:/usr/share/nginx/html
redis:
image: redis
启动和停止服务
docker-compose up -d
docker-compose down
Compose 可以自动创建网络、卷映射和端口映射,一条命令即可管理多容器应用。
六、图文示意
1. 镜像与容器关系
+-------------------+
| 镜像 (Image) |
|-------------------|
| Nginx 1.23 |
| Redis 7.2 |
+-------------------+
|
v
+-------------------+
| 容器 (Container)|
|-------------------|
| mynginx |
| redis-server |
+-------------------+
镜像是模板,容器是运行实例。一个镜像可以启动多个容器,每个容器独立运行。
2. 端口映射
宿主机端口 80 ------> 容器端口 80
宿主机端口 6379 ----> 容器端口 6379
端口映射让外部访问容器服务。
3. 目录挂载
宿主机目录: ./html
|
v
容器目录: /usr/share/nginx/html
目录挂载实现宿主机与容器数据同步。
4. 卷映射
+-------------------+
| Docker 卷 (mydata) |
+-------------------+
^
|
容器路径: /usr/share/nginx/html
卷可跨容器共享,容器删除后数据仍保留。
5. Compose 多容器示意
+--------------------+
| Web Service |
| nginx |
| Ports: 80:80 |
| Volume: ./html |
+--------------------+
+--------------------+
| Redis Service |
| redis |
| Ports: 6379:6379 |
+--------------------+
Compose 文件统一管理多个容器,启动时自动配置网络、端口和卷映射。