【Docker】常用命令大全及解析

基础命令

命令 说明 示例
docker version 查看 Docker 客户端和服务器版本信息 docker version
docker info 显示 Docker 系统信息(容器数、镜像数、存储驱动等) docker info
docker help 查看帮助信息,后接具体命令可查看子命令帮助 docker help run
docker system df 查看磁盘使用情况(镜像、容器、数据卷等) docker system df
docker system prune 清理未使用的容器、网络、镜像(悬空)和数据卷 docker system prune -a

容器管理

命令 说明 示例
docker run 创建并启动一个新容器 docker run -d --name nginx -p 80:80 nginx
docker ps 列出运行中的容器,-a 列出所有容器 docker ps -a
docker start 启动一个已存在的容器 docker start nginx
docker stop 停止一个运行中的容器 docker stop nginx
docker restart 重启容器 docker restart nginx
docker rm 删除一个或多个容器(需先停止) docker rm nginx
docker logs 查看容器日志,-f 实时跟踪 docker logs -f nginx
docker exec 在运行中的容器内执行命令 docker exec -it nginx bash
docker inspect 查看容器详细信息(JSON 格式) docker inspect nginx
docker cp 在容器和宿主机之间复制文件/文件夹 docker cp index.html nginx:/usr/share/nginx/html
docker commit 从容器创建新镜像 docker commit nginx my-nginx:v1

镜像操作

命令 说明 示例
docker images 列出本地镜像 docker images
docker pull 从镜像仓库拉取镜像 docker pull ubuntu:20.04
docker push 将本地镜像推送到镜像仓库 docker push myrepo/myapp:latest
docker build 从 Dockerfile 构建镜像 docker build -t myapp:v1 .
docker tag 为镜像打标签 docker tag myapp:v1 myrepo/myapp:v1
docker rmi 删除本地镜像 docker rmi myapp:v1
docker save 将镜像保存为 tar 归档文件 docker save -o myapp.tar myapp:v1
docker load 从 tar 归档文件加载镜像 docker load -i myapp.tar
docker history 查看镜像构建历史 docker history nginx
docker inspect 查看镜像详细信息 docker inspect nginx

数据卷

命令 说明 示例
docker volume create 创建数据卷 docker volume create mydata
docker volume ls 列出数据卷 docker volume ls
docker volume inspect 查看数据卷详细信息 docker volume inspect mydata
docker volume rm 删除数据卷 docker volume rm mydata
docker volume prune 删除所有未使用的数据卷 docker volume prune
挂载数据卷(运行容器时) 使用 -v--mount 挂载卷 docker run -v mydata:/data ubuntu
挂载宿主机目录 绑定挂载(bind mount) docker run -v /host/data:/container/data ubuntu

网络相关

命令 说明 示例
docker network create 创建自定义网络 docker network create --driver bridge mynet
docker network ls 列出网络 docker network ls
docker network inspect 查看网络详细信息 docker network inspect mynet
docker network rm 删除网络 docker network rm mynet
docker network prune 删除所有未使用的网络 docker network prune
docker network connect 将容器连接到网络 docker network connect mynet nginx
docker network disconnect 将容器从网络断开 docker network disconnect mynet nginx
指定容器网络(运行容器时) 使用 --network 指定网络 docker run --network mynet --name nginx nginx

Docker Compose

命令 说明 示例
docker-compose up 创建并启动所有服务(-d 后台运行) docker-compose up -d
docker-compose down 停止并删除所有容器、网络(可选删除卷:-v docker-compose down -v
docker-compose ps 列出当前项目的容器状态 docker-compose ps
docker-compose logs 查看服务日志,-f 实时跟踪 docker-compose logs -f web
docker-compose exec 在运行中的服务容器内执行命令 docker-compose exec web bash
docker-compose build 构建(或重新构建)服务镜像 docker-compose build web
docker-compose pull 拉取服务依赖的镜像 docker-compose pull
docker-compose restart 重启服务 docker-compose restart web
docker-compose stop 停止服务(不删除容器) docker-compose stop
docker-compose start 启动已停止的服务 docker-compose start
docker-compose config 验证 Compose 文件格式并显示配置 docker-compose config

相关推荐
小蓝波2 小时前
docker 的命令
java·docker·容器
2301_801184754 小时前
docker 工作
java·docker·容器
想你依然心痛7 小时前
AtomCode 在 DevOps 场景中的实战:CI/CD 流水线脚本自动生成
运维·ci/cd·docker·devops·自动化部署·github actions
摇滚侠7 小时前
DockerHub 在国内有没有替代
docker
是大强8 小时前
Docker中文件修改的三种方法
运维·docker·容器
梦梦代码精1 天前
电商系统不是技术堆叠:LikeShop如何用分层Hold住复杂业务?
java·docker·代码规范
Tian_Hang1 天前
Eclipse Ditto 物模型相关代码
java·运维·服务器·ide·eureka·eclipse
云烟成雨TD1 天前
Kubernetes 系列【4】基础概念
云原生·容器·kubernetes
zhoupenghui1681 天前
【AI大模型应用开发】【项目实战】13.RAG智慧问答项目-(一)项目介绍&项目架构&项目环境配置
人工智能·docker·ai·milvus·rag·attu·rag智慧问答项目