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 日常管理的核心场景,建议收藏作为速查手册!

相关推荐
ZGG00319 分钟前
线程池详解:从 7 大参数到生产避坑
java·数据库·后端
迪康Defender24 分钟前
公用电脑责任追溯难?迪康端点安全一体化管理系统用户模式详解
java·运维·开发语言·网络·其他·安全
京师20万禁军教头1 小时前
47-常用类-八大包装类(Wrapper Classes)
java
come112341 小时前
剪映零基础教程
java·linux·运维
16月6日-晴1 小时前
Java面向对象——接口
java·开发语言
苏生Susheng2 小时前
【软件实施】Windows 服务器运维实战
java·运维·服务器·windows·spring boot·javaweb·实施
Java小白笔记2 小时前
Java 实现 ZIP 压缩包生成方案
java·开发语言·网络·7-zip
bruce1282 小时前
K8s Pod 异常重启排查
云原生·容器·kubernetes
霸道流氓气质2 小时前
Spring AI 多模态开发指南:图片理解与语音合成
java·人工智能·spring
en.en..3 小时前
Linux mmap 内存映射深度解析:基于帧缓冲 /dev/fb0
java·服务器·前端