附录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 可以退出持续监控模式。

相关推荐
cg_ssh1 小时前
Docker 下启动 Nacos 3.1.1 单机模式
运维·docker·容器
修己xj1 小时前
使用 Docker 部署 SQL Server 并导入 .mdb 文件的完整指南
运维·docker·容器
H Journey5 小时前
Docker Swarm集群管理
docker·集群管理·swarm
迎仔5 小时前
13-云原生大数据架构介绍:大数据世界的“弹性城市”
大数据·云原生·架构
小码哥0686 小时前
代驾系统微服务容器化部署与灰度发布流程
微服务·云原生·代驾系统·代驾·代驾服务·同城代驾
江畔何人初6 小时前
k8s静态pod
云原生·容器·kubernetes
硅基流动7 小时前
从云原生到 AI 的跃迁探索之路|开发者说
大数据·人工智能·云原生
小二·8 小时前
Go 语言系统编程与云原生开发实战(第10篇)性能调优实战:Profiling × 内存优化 × 高并发压测(万级 QPS 实录)
开发语言·云原生·golang
u0104058369 小时前
淘客返利系统的CI/CD流水线搭建:Docker镜像构建与K8s部署实践
ci/cd·docker·kubernetes
小马爱打代码9 小时前
熔断限流从入门到实战:打造高可用微服务架构
微服务·云原生·架构