docker常用命令

目录

一、镜像(Image)操作

二、容器(Container)操作

[1. 生命周期管理](#1. 生命周期管理)

[2. 查看与监控](#2. 查看与监控)

[3. 数据操作](#3. 数据操作)

三、网络(Network)操作

四、卷(Volume)操作

五、系统维护

六、组合命令(高效操作)

七、日志管理

[八、Docker Compose 常用命令](#八、Docker Compose 常用命令)

九、配置别名(简化操作)

十、可视化工具推荐


Docker 中操作镜像(Image)、容器(Container)等核心资源的常用命令大全,按功能分类整理:


一、镜像(Image)操作

命令 说明 示例
docker images 列出本地镜像 docker images -a (含中间层镜像)
docker pull 拉取镜像 docker pull ubuntu:22.04
docker build 构建镜像 docker build -t myapp:v1 .
docker rmi 删除镜像 docker rmi nginx:alpine
docker image prune 清理悬空镜像 docker image prune -a (清理所有未使用镜像)
docker save 导出镜像 docker save -o nginx.tar nginx
docker load 导入镜像 docker load -i nginx.tar
docker history 查看镜像构建历史 docker history nginx
docker tag 标记镜像 docker tag nginx myrepo/nginx:v2

二、容器(Container)操作

1. 生命周期管理
命令 说明 示例
docker run 创建并启动容器 docker run -d -p 80:80 --name webserver nginx
docker start/stop/restart 启停容器 docker stop webserver
docker rm 删除容器 docker rm -f webserver (强制删除运行中容器)
docker create 创建但不启动 docker create --name temp ubuntu
docker exec 在运行中容器执行命令 docker exec -it webserver bash
docker update 更新容器配置 docker update --memory 512M webserver
2. 查看与监控
命令 说明 示例
docker ps 列出容器 docker ps -a (含停止的容器)
docker logs 查看容器日志 docker logs -f webserver (实时日志)
docker top 查看容器进程 docker top webserver
docker stats 实时资源监控 docker stats (所有容器)
docker inspect 查看容器详情 docker inspect webserver
docker port 查看端口映射 docker port webserver 80
docker diff 查看文件变更 docker diff webserver
3. 数据操作
命令 说明 示例
docker cp 复制文件 docker cp webserver:/etc/nginx .
docker commit 创建新镜像 docker commit webserver mynginx

三、网络(Network)操作

命令 说明 示例
docker network ls 列出网络
docker network create 创建网络 docker network create mynet
docker network inspect 查看网络详情 docker network inspect bridge
docker network connect 连接容器到网络 docker network connect mynet webserver
docker network prune 清理未使用网络

四、卷(Volume)操作

命令 说明 示例
docker volume ls 列出卷
docker volume create 创建卷 docker volume create dbdata
docker volume inspect 查看卷详情
docker volume rm 删除卷 docker volume rm dbdata
docker volume prune 清理未使用卷

五、系统维护

命令 说明 示例
docker system df 查看磁盘使用
docker system prune 清理所有未使用资源 docker system prune -a --volumes
docker info 显示系统信息
docker version 显示版本信息
docker events 查看实时事件 docker events --filter 'event=start'

六、组合命令(高效操作)

复制代码
# 1. 批量停止所有容器
docker stop $(docker ps -q)

# 2. 批量删除所有容器
docker rm -f $(docker ps -aq)

# 3. 批量删除所有镜像
docker rmi -f $(docker images -q)

# 4. 清理所有无用资源
docker system prune -a -f --volumes

# 5. 按名称过滤容器
docker ps --filter "name=web"

# 6. 按状态过滤容器
docker ps --filter "status=exited"

# 7. 查看容器资源限制
docker stats --no-stream --format "table {{.Name}}\t{{.CPUPerc}}\t{{.MemUsage}}"

七、日志管理

复制代码
# 1. 查看最后100行日志
docker logs --tail 100 webserver

# 2. 查看特定时间段的日志
docker logs --since 2023-01-01 --until 2023-01-02 webserver

# 3. JSON格式日志解析
docker logs webserver | jq

八、Docker Compose 常用命令

命令 说明
docker-compose up -d 启动服务
docker-compose down 停止并删除资源
docker-compose ps 查看服务状态
docker-compose logs 查看服务日志
docker-compose build 重新构建镜像
docker-compose exec 进入服务容器

九、配置别名(简化操作)

~/.bashrc 中添加:

复制代码
alias dk='docker'
alias dkc='docker-compose'
alias dkps='docker ps --format "table {{.ID}}\t{{.Names}}\t{{.Status}}\t{{.Ports}}"'
alias dkimg='docker images --format "table {{.ID}}\t{{.Repository}}\t{{.Tag}}\t{{.Size}}"'
alias dkprune='docker system prune -af'

执行 source ~/.bashrc 生效


十、可视化工具推荐

  1. Portainer

    复制代码
    docker run -d -p 9000:9000 --name portainer \
    -v /var/run/docker.sock:/var/run/docker.sock \
    portainer/portainer
  2. Lazydocker

    复制代码
    docker run --rm -it -v \
    /var/run/docker.sock:/var/run/docker.sock \
    lazyteam/lazydocker

这些命令覆盖了 Docker 日常管理的核心场景,建议收藏作为速查手册!

相关推荐
桦说编程1 小时前
Java 中如何创建不可变类型
java·后端·函数式编程
lifallen1 小时前
Java Stream sort算子实现:SortedOps
java·开发语言
IT毕设实战小研1 小时前
基于Spring Boot 4s店车辆管理系统 租车管理系统 停车位管理系统 智慧车辆管理系统
java·开发语言·spring boot·后端·spring·毕业设计·课程设计
没有bug.的程序员2 小时前
JVM 总览与运行原理:深入Java虚拟机的核心引擎
java·jvm·python·虚拟机
甄超锋2 小时前
Java ArrayList的介绍及用法
java·windows·spring boot·python·spring·spring cloud·tomcat
阿华的代码王国3 小时前
【Android】RecyclerView复用CheckBox的异常状态
android·xml·java·前端·后端
Zyy~3 小时前
《设计模式》装饰模式
java·设计模式
A尘埃3 小时前
企业级Java项目和大模型结合场景(智能客服系统:电商、金融、政务、企业)
java·金融·政务·智能客服系统
青云交3 小时前
Java 大视界 -- 基于 Java 的大数据可视化在城市交通拥堵治理与出行效率提升中的应用(398)
java·大数据·flink·大数据可视化·拥堵预测·城市交通治理·实时热力图
CHEN5_024 小时前
【Java基础面试题】Java基础概念
java·开发语言