以下是一份精心整理的 Docker 常用命令大全,涵盖容器、镜像、网络、数据卷等核心操作,建议收藏备用:
启动容器
docker run [OPTIONS] IMAGE [COMMAND]
# 示例:
docker run -it --name my_nginx -p 80:80 nginx # 交互式启动
docker run -d --restart=always nginx # 后台守护进程运行
启停操作
docker start/stop/restart 容器名/ID
docker pause/unpause 容器名/ID # 暂停/恢复容器
删除容器
docker rm -f 容器名/ID # 强制删除运行中的容器
docker container prune # 清理所有停止的容器
镜像操作
docker pull 镜像名:标签 # 拉取镜像(默认latest)
docker push 用户名/镜像名:标签 # 推送镜像到仓库
docker rmi 镜像名/ID # 删除镜像
docker image prune -a # 清理无用镜像
构建镜像
docker build -t 镜像名:标签 Dockerfile路径
# 示例:
docker build -t my_app:v1 .
状态查询
docker ps # 查看运行中的容器
docker ps -a # 查看所有容器(含已停止)
docker stats # 实时资源监控
docker logs -f 容器名/ID # 查看日志(实时跟踪)
详细信息
docker inspect 容器名/ID # 查看容器详细配置
docker images # 列出本地镜像
docker history 镜像名/ID # 查看镜像构建历史
docker network ls # 列出所有网络
docker network create my_net # 创建自定义网络
docker network inspect my_net # 查看网络详情
docker network connect my_net 容器名 # 将容器加入网络
数据卷操作
docker volume create vol_name # 创建数据卷
docker volume ls # 列出数据卷
docker volume inspect vol_name # 查看详情
挂载示例
docker run -v /宿主机路径:/容器路径 镜像名 # 目录挂载
docker run -v vol_name:/容器路径 镜像名 # 数据卷挂载
进入容器
docker exec -it 容器名/ID /bin/bash # 进入运行中的容器
文件拷贝
docker cp 宿主机文件 容器名:/路径 # 宿主机→容器
docker cp 容器名:/文件 宿主机路径 # 容器→宿主机
环境变量
docker run -e "ENV_VAR=value" 镜像名
# 停止所有容器
docker stop $(docker ps -q)
# 删除所有镜像(慎用!)
docker rmi $(docker images -q)
# 清理系统(容器+镜像+网络+无用卷)
docker system prune -a --volumes
docker-compose up -d # 启动服务栈(后台运行)
docker-compose down # 停止并删除服务栈
docker-compose logs -f # 查看日志
docker-compose ps # 查看服务状态
掌握这些命令后,日常 Docker 操作效率可提升 90%!建议配合 Shell 别名使用更高效(如 alias dps='docker ps --format "table {{.ID}}\t{{.Names}}\t{{.Status}}"
)。