在运维工作中,Docker 的基本命令是日常操作的核心工具。以下是最常用的命令分类整理,附带示例和使用场景,帮助你快速掌握:
一、镜像管理命令
1. 拉取镜像
docker pull 镜像名[:标签]
# 示例:拉取 nginx 最新版
docker pull nginx
# 拉取指定版本
docker pull nginx:1.23
2. 查看本地镜像
docker images
# 或
docker image ls
3. 删除镜像
docker rmi 镜像ID或名称[:标签]
# 示例:删除 nginx 镜像
docker rmi nginx
# 强制删除(即使有容器依赖)
docker rmi -f nginx
4. 构建镜像(从 Dockerfile)
docker build -t 自定义镜像名:标签 .
# 示例:当前目录有 Dockerfile,构建名为 myapp 的镜像
docker build -t myapp:v1 .
5. 保存/加载镜像
# 保存镜像到文件
docker save -o 文件名.tar 镜像名
# 示例:
docker save -o myapp.tar myapp:v1# 从文件加载镜像
docker load -i 文件名.tar
二、容器管理命令
1. 启动容器
docker run [选项] 镜像名 [命令] [参数]
# 示例:后台运行 nginx,映射 80 端口
docker run -d -p 80:80 --name my-nginx nginx# 常用选项:
-d # 后台运行(detach 模式)
-p 宿主机端口:容器端口 # 端口映射
--name 容器名 # 自定义容器名称
-v 宿主机路径:容器路径 # 挂载数据卷
-e 变量名=值 # 设置环境变量
--rm # 容器退出时自动删除
-it # 交互式终端(用于进入容器)
2. 查看容器
# 查看运行中的容器
docker ps# 查看所有容器(包括已停止的)
docker ps -a# 查看容器详细信息
docker inspect 容器名或ID
3. 停止/启动/重启容器
# 停止容器
docker stop 容器名或ID# 启动已停止的容器
docker start 容器名或ID# 重启容器
docker restart 容器名或ID
4. 删除容器
docker rm 容器名或ID
# 强制删除运行中的容器
docker rm -f 容器名或ID# 删除所有已停止的容器
docker rm $(docker ps -aq)
5. 进入容器
docker exec -it 容器名或ID /bin/bash
# 示例:进入名为 my-nginx 的容器
docker exec -it my-nginx bash
6. 查看容器日志
docker logs [选项] 容器名或ID
# 示例:查看实时日志
docker logs -f my-nginx
三、数据卷管理命令
1. 创建数据卷
docker volume create 卷名
# 示例:
docker volume create my-data
2. 查看数据卷列表
docker volume ls
3. 删除数据卷
docker volume rm 卷名
4. 挂载数据卷到容器
docker run -v 卷名:容器内路径 镜像名
# 示例:
docker run -d -v my-data:/app/data nginx
四、网络管理命令
1. 查看网络列表
docker network ls
2. 创建自定义网络
docker network create --driver bridge my-network
3. 运行容器并加入网络
docker run --network=my-network nginx
五、系统信息命令
1. 查看 Docker 系统信息
docker info
2. 查看磁盘使用情况(镜像、容器、卷占用空间)
docker system df
3. 清理无用资源(镜像、容器、网络等)
docker system prune
六、常用组合命令(运维高频场景)
1. 快速启动一个测试容器
docker run --rm -it alpine sh
# --rm:容器退出时自动删除
# -it:交互式终端
# alpine:轻量级镜像
# sh:启动 shell
2. 查看容器资源使用情况
docker stats
3. 复制文件到容器内
docker cp 宿主机路径 容器名或ID:容器内路径
# 示例:
docker cp /tmp/test.txt my-nginx:/etc/nginx/
4. 从容器内复制文件到宿主机
docker cp 容器名或ID:容器内路径 宿主机路径
七、命令速查表
场景 | 命令 |
---|---|
拉取镜像 | docker pull 镜像名[:标签] |
构建镜像 | docker build -t 自定义镜像名:标签 . |
查看镜像 | docker images |
删除镜像 | docker rmi 镜像名或ID |
启动容器 | docker run -d -p 80:80 --name my-nginx nginx |
进入容器 | docker exec -it 容器名或ID bash |
停止容器 | docker stop 容器名或ID |
删除容器 | docker rm 容器名或ID |
查看日志 | docker logs -f 容器名或ID |
创建数据卷 | docker volume create 卷名 |
挂载数据卷 | docker run -v 卷名:容器内路径 镜像名 |
清理资源 | docker system prune |
掌握这些命令,你就能完成 Docker 的基本运维工作。建议通过实际操作练习,加深记忆。