docker常用命令

好的,没问题!这是一份为您精心整理的 Docker 常用命令大全,按照功能进行了分类,并附上了最常用的选项和示例。您可以把它当作一个速查手册。

一、 镜像管理 (Image Management)

镜像是创建容器的基础。

命令 描述 示例
docker pull 从 Docker Hub 或其他镜像仓库拉取一个镜像 docker pull nginx:latest
docker images 列出本地已经下载的所有镜像 docker images
docker rmi 删除一个或多个本地镜像 docker rmi ubuntu:18.04
docker rmi -f 强制删除一个镜像(即使有容器在使用它) docker rmi -f my-image
docker build 从 Dockerfile 构建一个新镜像 docker build -t my-app:1.0 .
docker history 查看镜像的构建历史(各层信息) docker history nginx
docker save 将一个镜像保存成 tar 归档文件 docker save -o nginx.tar nginx:latest
docker load 从 tar 归档文件加载一个镜像 docker load -i nginx.tar

二、 容器生命周期 (Container Lifecycle)

容器是镜像的运行实例。

命令 描述 示例
docker run 基于一个镜像创建并启动一个新容器 docker run -d -p 8080:80 --name my-web nginx
docker ps 列出所有正在运行的容器 docker ps
docker ps -a 列出所有的容器(包括已停止的) docker ps -a
docker stop 优雅地停止一个正在运行的容器(发送 SIGTERM) docker stop my-web
docker kill 强制停止一个正在运行的容器(发送 SIGKILL) docker kill my-web
docker start 启动一个已经停止的容器 docker start my-web
docker restart 重启一个容器 docker restart my-web
docker rm 删除一个或多个已停止的容器 docker rm my-web
docker rm -f 强制删除一个容器(即使它在运行中) docker rm -f my-web

docker run 的常用选项:

  • -d (--detach): 后台运行容器(守护式运行)。
  • -p (--publish): 端口映射,格式为 主机端口:容器端口
  • -v (--volume): 数据卷挂载,格式为 主机路径:容器路径
  • --name: 为容器指定一个易于记忆的名称。
  • -it (--interactive --tty): 以交互模式进入容器的终端。
  • --rm: 容器退出时自动删除容器,适合临时任务。

三、 容器操作与监控 (Container Operations)

管理和查看正在运行的容器。

命令 描述 示例
docker exec 在一个正在运行的容器内部执行命令 docker exec -it my-web /bin/bash
docker logs 查看容器的日志输出 docker logs my-web
docker logs -f 实时跟踪查看容器的日志(类似 tail -f docker logs -f my-web
docker inspect 查看容器/镜像的底层详细信息(如 IP 地址) docker inspect my-web
docker stats 实时显示容器的资源使用情况(CPU, 内存等) docker stats
docker cp 在主机和容器之间复制文件或文件夹 docker cp ./index.html my-web:/usr/share/nginx/html/

四、 系统清理 (System Cleanup)

清理不再使用的 Docker 资源,释放磁盘空间。

命令 描述
docker system prune 一键清理! 删除所有已停止的容器、悬空镜像、不用的网络和构建缓存。
docker system prune -a 更彻底!prune基础上,额外删除所有未被任何容器使用的镜像。
docker rm $(docker ps -a -q) 手动清理: 删除所有容器(无论状态)。
docker rmi $(docker images -q) 手动清理: 删除所有本地镜像(请谨慎!)。

⚠️ 警告: 清理命令是破坏性的,执行前请三思。


五、 Docker Compose (多容器应用)

用于定义和运行多容器 Docker 应用程序的工具。通常所有配置都在 docker-compose.yml 文件中。

命令 描述
docker-compose up 根据 docker-compose.yml 创建并启动所有服务(前台运行)。
docker-compose up -d 在后台创建并启动所有服务。
docker-compose down 停止并删除由 up 创建的容器、网络。
docker-compose down -v down 的基础上,同时删除定义的数据卷。
docker-compose ps 列出 Compose 项目中的所有容器。
docker-compose logs 查看所有服务的日志。
docker-compose logs -f 实时跟踪所有服务的日志。
docker-compose build 构建或重新构建项目中的服务镜像。
docker-compose exec 进入某个正在运行的服务容器内部。docker-compose exec web /bin/bash

希望这份清单能对您有所帮助!