Docker 常用命令大全

Docker 常用命令大全

Docker 是一种开源的应用容器引擎,广泛应用于开发、部署和运行分布式应用。掌握 Docker 常用命令对于开发人员和运维人员来说非常重要。本文将为大家整理常用的 Docker 命令,并按照功能分为多个部分,帮助你高效使用 Docker。


1. 安装与版本管理

1.1 检查 Docker 版本

bash 复制代码
docker --version

用于查看当前安装的 Docker 版本。

1.2 检查 Docker 服务状态

bash 复制代码
docker info

显示 Docker 系统的详细信息,帮助你了解 Docker 的运行状态。

1.3 启动/停止 Docker 服务 (Linux)

bash 复制代码
# 启动 Docker 服务
sudo systemctl start docker

# 停止 Docker 服务
sudo systemctl stop docker

# 重启 Docker 服务
sudo systemctl restart docker

2. 镜像管理

2.1 拉取镜像

bash 复制代码
docker pull <镜像名>:<标签>

例如,拉取最新的 nginx 镜像:

bash 复制代码
docker pull nginx:latest

2.2 查看本地镜像

bash 复制代码
docker images

列出所有本地 Docker 镜像。

2.3 搜索镜像

bash 复制代码
docker search <关键词>

例如,搜索 Redis 镜像:

bash 复制代码
docker search redis

2.4 删除镜像

bash 复制代码
docker rmi <镜像ID或名称>

删除指定镜像。如果镜像被容器使用,则需要先删除相关容器。

2.5 构建镜像

bash 复制代码
docker build -t <镜像名>:<标签> .

通过 Dockerfile 构建镜像。

2.6 导出和导入镜像

bash 复制代码
# 导出镜像
docker save -o <文件名>.tar <镜像名>

# 导入镜像
docker load -i <文件名>.tar

3. 容器管理

3.1 启动容器

bash 复制代码
docker run <镜像名>

例如,从 nginx 镜像启动一个容器:

bash 复制代码
docker run nginx

3.2 启动并后台运行容器

bash 复制代码
docker run -d <镜像名>

例如,后台运行 Redis:

bash 复制代码
docker run -d redis

3.3 查看正在运行的容器

bash 复制代码
docker ps

列出当前运行的所有容器。

3.4 查看所有容器(包括已停止的)

bash 复制代码
docker ps -a

3.5 删除容器

bash 复制代码
docker rm <容器ID或名称>

删除一个容器。如果容器正在运行,需要先停止再删除。

3.6 停止容器

bash 复制代码
docker stop <容器ID或名称>

停止正在运行的容器。

3.7 进入容器

bash 复制代码
docker exec -it <容器ID或名称> /bin/bash

进入容器的交互式终端。

3.8 查看容器日志

bash 复制代码
docker logs <容器ID或名称>

查看容器的标准输出日志。

3.9 容器导出和导入

bash 复制代码
# 导出容器为 tar 文件
docker export <容器ID> -o <文件名>.tar

# 从 tar 文件导入
docker import <文件名>.tar <镜像名>

4. 网络管理

4.1 查看网络列表

bash 复制代码
docker network ls

列出所有 Docker 网络。

4.2 创建网络

bash 复制代码
docker network create <网络名>

4.3 删除网络

bash 复制代码
docker network rm <网络名>

4.4 将容器连接到网络

bash 复制代码
docker network connect <网络名> <容器名>

4.5 将容器从网络断开

bash 复制代码
docker network disconnect <网络名> <容器名>

4.6 查看网络详情

bash 复制代码
docker network inspect <网络名>

5. 数据卷管理

5.1 查看数据卷

bash 复制代码
docker volume ls

列出所有数据卷。

5.2 创建数据卷

bash 复制代码
docker volume create <数据卷名>

5.3 删除数据卷

bash 复制代码
docker volume rm <数据卷名>

5.4 查看数据卷的详细信息

bash 复制代码
docker volume inspect <数据卷名>

5.5 挂载数据卷到容器

bash 复制代码
docker run -v <数据卷名>:/path/in/container <镜像名>

6. 日志与调试

6.1 查看容器的日志

bash 复制代码
docker logs <容器ID或名称>

查看容器的标准输出和错误日志。

6.2 实时查看容器日志

bash 复制代码
docker logs -f <容器ID或名称>

实时输出容器的日志信息。

6.3 查看容器的资源使用情况

bash 复制代码
docker stats <容器ID或名称>

显示容器的实时资源使用情况(如 CPU、内存等)。

6.4 查看容器的详细信息

bash 复制代码
docker inspect <容器ID或名称>

查看容器的详细配置信息。


7. 系统管理与清理

7.1 查看 Docker 系统信息

bash 复制代码
docker info

显示 Docker 的系统信息,包括容器、镜像、网络、存储等的统计信息。

7.2 清理未使用的镜像、容器、数据卷和网络

bash 复制代码
docker system prune -f

清理 Docker 系统中的未使用资源,释放磁盘空间。-f 参数表示跳过确认提示。

7.3 清理未使用的镜像

bash 复制代码
docker image prune -a -f

删除所有未被任何容器使用的镜像。

7.4 清理未使用的容器

bash 复制代码
docker container prune -f

删除所有已停止的容器。

7.5 清理未使用的数据卷

bash 复制代码
docker volume prune -f

删除所有未被容器使用的数据卷。

7.6 清理未使用的网络

bash 复制代码
docker network prune -f

删除所有未被容器使用的网络。


8. 常用组合命令

8.1 清理所有未使用的资源(镜像、容器、卷、网络)

bash 复制代码
docker system prune -af --volumes

8.2 停止并删除所有容器

bash 复制代码
docker stop $(docker ps -q) && docker rm $(docker ps -a -q)

8.3 删除所有未使用的镜像、网络和卷

bash 复制代码
docker image prune -a -f && docker volume prune -f && docker network prune -f

结语

通过掌握这些常用的 Docker 命令,你可以更高效地管理 Docker 环境,优化工作流程,提升开发与运维效率。随着项目的规模不断扩大,合理地管理 Docker 容器和镜像资源变得至关重要。希望本文的总结对你有所帮助,进一步提升你使用 Docker 的技能。如果有任何疑问或建议,欢迎在评论区留言讨论!

相关推荐
亲持红叶2 小时前
open-webui安装
docker·open-webui
伪装成塔的小兵2 小时前
Windows使用docker部署fastgpt出现的一些问题
windows·docker·容器·oneapi·fastgpt
转身後 默落5 小时前
11.Docker 之分布式仓库 Harbor
分布式·docker·容器
菩提云6 小时前
Deepseek存算分离安全部署手册
人工智能·深度学习·安全·docker·容器
c无序12 小时前
Docker-技术架构演进之路
docker
努力的小T16 小时前
使用 Docker 部署 Apache Spark 集群教程
linux·运维·服务器·docker·容器·spark·云计算
东风微鸣18 小时前
TTRSS 迁移实战
docker·云原生·kubernetes·可观察性
转身後 默落19 小时前
04.Docker 镜像命令
docker·容器·eureka
IT_张三19 小时前
Docker+Kubernetes_第一章_Docker入门
java·docker·kubernetes
jessezappy20 小时前
记录:Docker 安装记录
docker·安装·ollama·软链接