附录A:常用 Docker 命令速查表

附录A:常用 Docker 命令速查表

这份速查表汇总了本书中介绍过的以及其他一些常用的 Docker 和 Docker Compose 命令,希望能成为你日常工作中的得力助手。

镜像管理 (Image Management)

  • 列出本地所有镜像

    bash 复制代码
    docker images
  • 构建镜像

    bash 复制代码
    # 从当前目录的 Dockerfile 构建,并打上标签
    docker build -t <image_name>:<tag> .
  • 从仓库拉取镜像

    bash 复制代码
    docker pull <image_name>:<tag>
  • 将镜像推送到仓库

    bash 复制代码
    # 需要先 docker login
    docker push <username>/<image_name>:<tag>
  • 删除一个或多个本地镜像

    bash 复制代码
    docker rmi <image_id_or_name>
  • 清理无用的镜像

    bash 复制代码
    # 清理所有未被使用的镜像
    docker image prune
    
    # 强制清理所有未被使用的镜像(包括被标记的)
    docker image prune -a
  • 查看镜像的详细信息

    bash 复制代码
    docker inspect <image_id_or_name>
  • 查看镜像的构建历史(图层)

    bash 复制代码
    docker history <image_id_or_name>

容器生命周期 (Container Lifecycle)

  • 运行一个容器

    bash 复制代码
    # 基本运行
    docker run <image_name>
    
    # 后台运行、端口映射、并命名
    docker run -d -p <host_port>:<container_port> --name <container_name> <image_name>
  • 列出正在运行的容器

    bash 复制代码
    docker ps
  • 列出所有容器(包括已停止的)

    bash 复制代码
    docker ps -a
    
    # 查看最新创建的容器
    docker ps -n <数量>
    
    # 只显示容器ID
    docker ps -q
  • 停止一个容器

    bash 复制代码
    docker stop <container_id_or_name>
  • 启动一个已停止的容器

    bash 复制代码
    docker start <container_id_or_name>
  • 重启一个容器

    bash 复制代码
    docker restart <container_id_or_name>
  • 删除一个已停止的容器

    bash 复制代码
    docker rm <container_id_or_name>
  • 强制删除一个正在运行的容器

    bash 复制代码
    docker rm -f <container_id_or_name>
  • 清理无用的容器

    bash 复制代码
    # 清理所有已停止的容器
    docker container prune

容器交互与监控 (Container Interaction & Monitoring)

  • 查看容器的日志

    bash 复制代码
    docker logs <container_id_or_name>
    
    # 实时跟踪日志
    docker logs -f <container_id_or_name>
  • 在运行的容器中执行命令

    bash 复制代码
    # 进入交互式 shell
    docker exec -it <container_id_or_name> /bin/sh
    
    # 执行单个命令
    docker exec <container_id_or_name> ls /
  • 查看容器的资源使用情况

    bash 复制代码
    # 查看所有运行中容器的实时资源使用(按 Ctrl+C 退出持续模式)
    docker stats
    
    # 查看指定容器的资源使用
    docker stats <container_id_or_name>
    
    # 只显示一次结果(不持续更新)
    docker stats --no-stream
  • 查看容器的详细信息

    bash 复制代码
    docker inspect <container_id_or_name>
  • 在容器和主机之间复制文件

    bash 复制代码
    # 从容器复制文件到主机
    docker cp <container_id_or_name>:<container_path> <host_path>
    
    # 从主机复制文件到容器
    docker cp <host_path> <container_id_or_name>:<container_path>
  • 查看容器中运行的进程

    bash 复制代码
    docker top <container_id_or_name>

数据卷和网络 (Volumes & Networking)

  • 列出所有数据卷

    bash 复制代码
    docker volume ls
  • 创建一个数据卷

    bash 复制代码
    docker volume create <volume_name>
  • 删除一个数据卷

    bash 复制代码
    docker volume rm <volume_name>
  • 清理无用的数据卷

    bash 复制代码
    docker volume prune
  • 列出所有网络

    bash 复制代码
    docker network ls
  • 创建一个网络

    bash 复制代码
    docker network create <network_name>
  • 删除一个网络

    bash 复制代码
    docker network rm <network_name>
  • 将容器连接到网络

    bash 复制代码
    docker network connect <network_name> <container_id_or_name>
    
    # 指定容器在网络中的别名
    docker network connect --alias <alias_name> <network_name> <container_id_or_name>
  • 将容器从网络中断开

    bash 复制代码
    docker network disconnect <network_name> <container_id_or_name>
    
    # 强制断开连接
    docker network disconnect -f <network_name> <container_id_or_name>

Docker Compose

  • 构建并启动所有服务

    bash 复制代码
    # 在前台运行
    docker compose up
    
    # 在后台运行
    docker compose up -d
    
    # 如果 Dockerfile 有变动,强制重新构建
    docker compose up --build
  • 停止并删除所有服务

    bash 复制代码
    docker compose down
    
    # 同时删除数据卷
    docker compose down --volumes
  • 列出所有服务状态

    bash 复制代码
    docker compose ps
  • 查看服务日志

    bash 复制代码
    # 查看所有服务日志
    docker compose logs
    
    # 跟踪特定服务的日志
    docker compose logs -f <service_name>
  • 在特定服务中执行命令

    bash 复制代码
    docker compose exec <service_name> <command>
  • 构建或重新构建服务

    bash 复制代码
    docker compose build

系统维护 (System Maintenance)

  • 系统级清理

    bash 复制代码
    # 清理所有未被使用的资源(镜像、容器、网络、数据卷)
    docker system prune
    
    # 强制清理所有未被使用的资源(包括被标记的镜像)
    docker system prune -a
    
    # 查看Docker系统使用情况
    docker system df
    
    # 查看详细的磁盘使用信息
    docker system df -v

持续监控说明

以下命令支持持续监控模式,可以实时刷新显示:

  • docker stats - 默认持续监控容器资源使用情况(按 Ctrl+C 退出)
  • docker logs -f - 持续跟踪容器日志输出
  • docker compose logs -f - 持续跟踪服务日志输出

注意docker stats 默认就是持续输出的,使用 --no-stream 可以只显示一次结果。

提示 :按 Ctrl+C 可以退出持续监控模式。

相关推荐
阿拉斯攀登32 分钟前
Kubernetes(K8s)全面解析:核心概念、架构与实践
docker·云原生·容器·kubernetes·k8s
boboo_2000_01 小时前
基于SpringBoot+Langchain4j的AI机票预订系统
spring cloud·微服务·云原生·langchain
Radan小哥2 小时前
Docker学习笔记—day011
笔记·学习·docker
Zhijun.li@Studio3 小时前
【Docker实战】在容器内配置 SSH 服务:安装、Vim配置与连接验证(保姆级教程)
docker·ssh·vim
了一梨3 小时前
使用Docker配置适配泰山派的交叉编译环境
linux·docker
拾忆,想起3 小时前
Dubbo配置方式大全:七种配置任你选,轻松玩转微服务!
服务器·网络·网络协议·微服务·云原生·架构·dubbo
ん贤3 小时前
高可靠微服务消息设计:Outbox模式、延迟队列与Watermill集成实践
redis·微服务·云原生·架构·消息队列·go·分布式系统
White-Legend4 小时前
支持docker一键部署了
运维·docker·容器
The star"'5 小时前
docker(6-10)
docker·容器·eureka