Docker 常用命令大全
Docker 是一种开源的应用容器引擎,广泛应用于开发、部署和运行分布式应用。掌握 Docker 常用命令对于开发人员和运维人员来说非常重要。本文将为大家整理常用的 Docker 命令,并按照功能分为多个部分,帮助你高效使用 Docker。
1. 安装与版本管理
1.1 检查 Docker 版本
docker --version
用于查看当前安装的 Docker 版本。
1.2 检查 Docker 服务状态
docker info
显示 Docker 系统的详细信息,帮助你了解 Docker 的运行状态。
1.3 启动/停止 Docker 服务 (Linux)
# 启动 Docker 服务
sudo systemctl start docker# 停止 Docker 服务
sudo systemctl stop docker# 重启 Docker 服务
sudo systemctl restart docker
2. 镜像管理
2.1 拉取镜像
docker pull <镜像名>:<标签>
例如,拉取最新的 nginx 镜像:
docker pull nginx:latest
2.2 查看本地镜像
docker images
列出所有本地 Docker 镜像。
2.3 搜索镜像
docker search <关键词>
例如,搜索 Redis 镜像:
docker search redis
2.4 删除镜像
docker rmi <镜像ID或名称>
删除指定镜像。如果镜像被容器使用,则需要先删除相关容器。
2.5 构建镜像
docker build -t <镜像名>:<标签> .
通过 Dockerfile
构建镜像。
2.6 导出和导入镜像
# 导出镜像
docker save -o <文件名>.tar <镜像名># 导入镜像
docker load -i <文件名>.tar
3. 容器管理
3.1 启动容器
docker run <镜像名>
例如,从 nginx
镜像启动一个容器:
docker run nginx
3.2 启动并后台运行容器
docker run -d <镜像名>
例如,后台运行 Redis:
docker run -d redis
3.3 查看正在运行的容器
docker ps
列出当前运行的所有容器。
3.4 查看所有容器(包括已停止的)
docker ps -a
3.5 删除容器
docker rm <容器ID或名称>
删除一个容器。如果容器正在运行,需要先停止再删除。
3.6 停止容器
docker stop <容器ID或名称>
停止正在运行的容器。
3.7 进入容器
docker exec -it <容器ID或名称> /bin/bash
进入容器的交互式终端。
3.8 查看容器日志
docker logs <容器ID或名称>
查看容器的标准输出日志。
3.9 容器导出和导入
# 导出容器为 tar 文件
docker export <容器ID> -o <文件名>.tar# 从 tar 文件导入
docker import <文件名>.tar <镜像名>
4. 网络管理
4.1 查看网络列表
docker network ls
列出所有 Docker 网络。
4.2 创建网络
docker network create <网络名>
4.3 删除网络
docker network rm <网络名>
4.4 将容器连接到网络
docker network connect <网络名> <容器名>
4.5 将容器从网络断开
docker network disconnect <网络名> <容器名>
4.6 查看网络详情
docker network inspect <网络名>
5. 数据卷管理
5.1 查看数据卷
docker volume ls
列出所有数据卷。
5.2 创建数据卷
docker volume create <数据卷名>
5.3 删除数据卷
docker volume rm <数据卷名>
5.4 查看数据卷的详细信息
docker volume inspect <数据卷名>
5.5 挂载数据卷到容器
docker run -v <数据卷名>:/path/in/container <镜像名>
6. 日志与调试
6.1 查看容器的日志
docker logs <容器ID或名称>
查看容器的标准输出和错误日志。
6.2 实时查看容器日志
docker logs -f <容器ID或名称>
实时输出容器的日志信息。
6.3 查看容器的资源使用情况
docker stats <容器ID或名称>
显示容器的实时资源使用情况(如 CPU、内存等)。
6.4 查看容器的详细信息
docker inspect <容器ID或名称>
查看容器的详细配置信息。
7. 系统管理与清理
7.1 查看 Docker 系统信息
docker info
显示 Docker 的系统信息,包括容器、镜像、网络、存储等的统计信息。
7.2 清理未使用的镜像、容器、数据卷和网络
docker system prune -f
清理 Docker 系统中的未使用资源,释放磁盘空间。-f
参数表示跳过确认提示。
7.3 清理未使用的镜像
docker image prune -a -f
删除所有未被任何容器使用的镜像。
7.4 清理未使用的容器
docker container prune -f
删除所有已停止的容器。
7.5 清理未使用的数据卷
docker volume prune -f
删除所有未被容器使用的数据卷。
7.6 清理未使用的网络
docker network prune -f
删除所有未被容器使用的网络。
8. 常用组合命令
8.1 清理所有未使用的资源(镜像、容器、卷、网络)
docker system prune -af --volumes
8.2 停止并删除所有容器
docker stop $(docker ps -q) && docker rm $(docker ps -a -q)
8.3 删除所有未使用的镜像、网络和卷
docker image prune -a -f && docker volume prune -f && docker network prune -f
结语
通过掌握这些常用的 Docker 命令,你可以更高效地管理 Docker 环境,优化工作流程,提升开发与运维效率。随着项目的规模不断扩大,合理地管理 Docker 容器和镜像资源变得至关重要。希望本文的总结对你有所帮助,进一步提升你使用 Docker 的技能。如果有任何疑问或建议,欢迎在评论区留言讨论!