以下是 Docker 的所有常用命令及其案例说明,按功能分类整理:
1. 镜像管理
1.1 拉取镜像
-
命令 :
docker pull <镜像名>:<标签> -
案例 : 拉取官方的
nginx镜像bashdocker pull nginx:latest
1.2 列出本地镜像
-
命令 :
docker images -
案例 : 查看本地所有镜像
bashdocker images
1.3 删除镜像
-
命令 :
docker rmi <镜像ID> -
案例 : 删除镜像 ID 为
abc123的镜像bashdocker rmi abc123
1.4 构建镜像
-
命令 :
docker build -t <镜像名> <Dockerfile路径> -
案例 : 在当前目录构建一个名为
myapp的镜像bashdocker build -t myapp .
1.5 查看镜像历史
-
命令 :
docker history <镜像名> -
案例 : 查看
nginx镜像的构建历史bashdocker history nginx
1.6 打包镜像为 tar 文件
-
命令 :
docker save -o <文件名>.tar <镜像名> -
案例 : 将
myapp镜像打包为myapp.tarbashdocker save -o myapp.tar myapp
1.7 从 tar 文件加载镜像
-
命令 :
docker load -i <文件名>.tar -
案例 : 从
myapp.tar文件加载镜像bashdocker load -i myapp.tar
2. 容器管理
2.1 启动容器
-
命令 :
docker run <选项> <镜像名> -
案例 : 启动一个
nginx容器并映射端口bashdocker run -d -p 8080:80 nginx
2.2 列出运行中的容器
-
命令 :
docker ps -
案例 : 查看当前运行中的容器
bashdocker ps
2.3 列出所有容器
-
命令 :
docker ps -a -
案例 : 查看所有容器(包括已停止的)
bashdocker ps -a
2.4 停止容器
-
命令 :
docker stop <容器ID> -
案例 : 停止容器 ID 为
123abc的容器bashdocker stop 123abc
2.5 启动已停止的容器
-
命令 :
docker start <容器ID> -
案例 : 启动容器 ID 为
123abc的容器bashdocker start 123abc
2.6 重启容器
-
命令 :
docker restart <容器ID> -
案例 : 重启容器 ID 为
123abc的容器bashdocker restart 123abc
2.7 删除容器
-
命令 :
docker rm <容器ID> -
案例 : 删除容器 ID 为
123abc的容器bashdocker rm 123abc
2.8 进入容器
-
命令 :
docker exec -it <容器ID> /bin/bash -
案例 : 进入容器 ID 为
123abc的容器bashdocker exec -it 123abc /bin/bash
2.9 查看容器日志
-
命令 :
docker logs <容器ID> -
案例 : 查看容器 ID 为
123abc的日志bashdocker logs 123abc
2.10 查看容器详细信息
-
命令 :
docker inspect <容器ID> -
案例 : 查看容器 ID 为
123abc的详细信息bashdocker inspect 123abc
2.11 导出容器为 tar 文件
-
命令 :
docker export -o <文件名>.tar <容器ID> -
案例 : 将容器 ID 为
123abc的容器导出为container.tarbashdocker export -o container.tar 123abc
2.12 从 tar 文件导入为镜像
-
命令 :
docker import <文件名>.tar <镜像名>:<标签> -
案例 : 从
container.tar文件导入为镜像myimage:latestbashdocker import container.tar myimage:latest
3. 网络管理
3.1 列出网络
-
命令 :
docker network ls -
案例 : 查看所有 Docker 网络
bashdocker network ls
3.2 创建网络
-
命令 :
docker network create <网络名> -
案例 : 创建一个名为
mynetwork的网络bashdocker network create mynetwork
3.3 连接容器到网络
-
命令 :
docker network connect <网络名> <容器ID> -
案例 : 将容器 ID 为
123abc的容器连接到mynetwork网络bashdocker network connect mynetwork 123abc
3.4 断开容器与网络的连接
-
命令 :
docker network disconnect <网络名> <容器ID> -
案例 : 断开容器 ID 为
123abc的容器与mynetwork网络的连接bashdocker network disconnect mynetwork 123abc
3.5 删除网络
-
命令 :
docker network rm <网络名> -
案例 : 删除名为
mynetwork的网络bashdocker network rm mynetwork
4. 数据卷管理
4.1 创建数据卷
-
命令 :
docker volume create <卷名> -
案例 : 创建一个名为
mydata的数据卷bashdocker volume create mydata
4.2 列出数据卷
-
命令 :
docker volume ls -
案例 : 查看所有数据卷
bashdocker volume ls
4.3 查看数据卷详细信息
-
命令 :
docker volume inspect <卷名> -
案例 : 查看
mydata数据卷的详细信息bashdocker volume inspect mydata
4.4 删除数据卷
-
命令 :
docker volume rm <卷名> -
案例 : 删除名为
mydata的数据卷bashdocker volume rm mydata
5. Docker Compose
5.1 启动服务
-
命令 :
docker-compose up -
案例 : 启动
docker-compose.yml中定义的服务bashdocker-compose up
5.2 停止服务
-
命令 :
docker-compose down -
案例 : 停止并删除
docker-compose.yml中定义的服务bashdocker-compose down
5.3 查看服务状态
-
命令 :
docker-compose ps -
案例 : 查看
docker-compose.yml中定义的服务状态bashdocker-compose ps
5.4 构建服务
-
命令 :
docker-compose build -
案例 : 构建
docker-compose.yml中定义的服务镜像bashdocker-compose build
5.5 启动服务(后台模式)
-
命令 :
docker-compose up -d -
案例 : 在后台启动
docker-compose.yml中定义的服务bashdocker-compose up -d
6. 系统信息
6.1 查看 Docker 版本
-
命令 :
docker --version -
案例 : 查看 Docker 版本
bashdocker --version
6.2 查看 Docker 系统信息
-
命令 :
docker info -
案例 : 查看 Docker 系统信息
bashdocker info
6.3 查看 Docker 磁盘使用情况
-
命令 :
docker system df -
案例 : 查看 Docker 磁盘使用情况
bashdocker system df
7. 清理
7.1 清理未使用的镜像、容器、网络
-
命令 :
docker system prune -
案例 : 清理未使用的资源
bashdocker system prune
7.2 清理所有未使用的资源
-
命令 :
docker system prune -a -
案例 : 清理所有未使用的资源(包括未使用的镜像)
bashdocker system prune -a
以上是 Docker 的常用命令及其案例说明,涵盖了镜像、容器、网络、数据卷、Docker Compose 和系统管理等核心功能。