docker所有命令总结
·
Docker 命令大全(按功能分类)
以下是 Docker 常用命令的完整列表,按功能分类整理
一、容器生命周期管理
# 创建并启动容器
docker run [选项] 镜像名 [命令] [参数]
docker run -d -p 8080:80 --name web nginx # 后台运行nginx并映射端口
docker run -it --rm ubuntu bash # 交互式运行ubuntu,退出后自动删除容器
# 选项说明:
-d, --detach # 后台运行容器
-i, --interactive # 保持标准输入打开
-t, --tty # 分配伪终端
-p, --publish list # 端口映射(主机:容器)
--name string # 指定容器名称
-v, --volume list # 挂载卷
-e, --env list # 设置环境变量
--restart string # 重启策略(always/on-failure)
--network string # 指定网络
--rm # 退出时自动删除容器
# 启动/停止/重启容器
docker start 容器名/ID # 启动已停止的容器
docker stop 容器名/ID # 优雅停止容器(发送SIGTERM)
docker kill 容器名/ID # 强制终止容器(发送SIGKILL)
docker restart 容器名/ID # 重启容器
# 暂停/恢复容器
docker pause 容器名/ID # 暂停容器所有进程
docker unpause 容器名/ID # 恢复容器进程
# 删除容器
docker rm 容器名/ID # 删除已停止的容器
docker rm -f 容器名/ID # 强制删除运行中的容器
docker rm $(docker ps -aq) # 删除所有容器(慎用)
二、容器查看与监控
# 查看容器列表
docker ps # 查看运行中的容器
docker ps -a # 查看所有容器(包括已停止的)
docker ps -aq # 仅显示容器ID
docker ps -l # 查看最近创建的容器
# 查看容器详细信息
docker inspect 容器名/ID # 查看容器完整配置信息
docker stats [容器名/ID] # 实时监控容器资源使用(CPU、内存等)
# 查看容器日志
docker logs 容器名/ID # 查看容器日志
docker logs -f 容器名/ID # 实时跟踪日志输出
docker logs --tail 100 容器名/ID # 查看最后100行日志
# 查看容器进程
docker top 容器名/ID # 查看容器内运行的进程
三、容器操作
# 进入运行中的容器
docker exec -it 容器名/ID bash # 交互式进入容器执行bash
docker exec 容器名/ID ls / # 非交互式执行命令
# 从容器内复制文件到主机
docker cp 容器名/ID:容器路径 主机路径
docker cp mycontainer:/app/data.txt /tmp/
# 从主机复制文件到容器
docker cp 主机路径 容器名/ID:容器路径
docker cp /tmp/config.txt mycontainer:/etc/
# 导出/导入容器
docker export 容器名/ID > 容器.tar # 导出容器为tar文件
cat 容器.tar | docker import - 新镜像名:标签 # 导入tar文件为镜像
四、镜像管理
# 查看本地镜像
docker images # 查看本地所有镜像
docker images -q # 仅显示镜像ID
docker images --digests # 显示镜像摘要
# 拉取/推送镜像
docker pull 镜像名[:标签] # 从Docker Hub拉取镜像
docker pull nginx:alpine # 拉取nginx的alpine版本
docker push 镜像名[:标签] # 推送镜像到Docker Hub
# 构建镜像
docker build -t 镜像名[:标签] 路径 # 基于Dockerfile构建镜像
docker build -t myapp:v1 . # 当前目录下的Dockerfile构建
docker build --no-cache -t myapp . # 不使用缓存构建
# 标记/删除镜像
docker tag 原镜像名:标签 新镜像名:标签 # 标记镜像用于推送
docker rmi 镜像名/ID # 删除本地镜像
docker rmi $(docker images -q) # 删除所有本地镜像(慎用)
# 查看镜像历史
docker history 镜像名[:标签] # 查看镜像构建历史
五、网络管理
# 查看网络列表
docker network ls # 查看所有网络
# 创建/删除网络
docker network create --driver bridge mynet # 创建桥接网络
docker network rm mynet # 删除网络
# 查看网络详情
docker network inspect mynet # 查看网络配置
# 连接/断开容器与网络
docker network connect mynet 容器名/ID # 连接容器到网络
docker network disconnect mynet 容器名/ID # 断开容器与网络的连接
六、卷管理
# 查看卷列表
docker volume ls # 查看所有卷
# 创建/删除卷
docker volume create myvolume # 创建卷
docker volume rm myvolume # 删除卷
# 查看卷详情
docker volume inspect myvolume # 查看卷配置
# 清理无用卷
docker volume prune # 删除所有未使用的卷
七、系统信息
docker info # 显示Docker系统信息
docker version # 显示Docker版本信息
docker system df # 显示磁盘使用情况(镜像、容器、卷)
docker system prune # 清理无用的镜像、容器、网络和卷
八、Docker Compose 命令
# 注意:Compose需单独安装,版本v2+命令格式为docker compose
docker compose up -d # 后台启动所有服务
docker compose down # 停止并删除所有服务
docker compose ps # 查看服务状态
docker compose logs -f # 跟踪服务日志
docker compose build # 构建服务镜像
docker compose restart # 重启服务
九、高级命令
# 保存/加载镜像
docker save 镜像名[:标签] > 镜像.tar # 保存镜像为tar文件
docker load < 镜像.tar # 从tar文件加载镜像
# 查看容器变更
docker diff 容器名/ID # 查看容器文件系统变更
# 更新容器配置
docker update --memory 512m 容器名/ID # 更新容器内存限制
# 登录/登出Docker Hub
docker login # 登录Docker Hub
docker logout # 登出Docker Hub
十、常用快捷键与技巧
# 退出交互式容器但不终止
Ctrl + P + Q # 退出容器但保持运行
# 快速停止所有容器
docker stop $(docker ps -aq) # 停止所有运行中的容器
# 查看容器IP
docker inspect --format '{{ .NetworkSettings.IPAddress }}' 容器名/ID
# 进入正在运行的容器的PID命名空间
docker exec -it --pid=container:容器名/ID nsenter --mount --uts --ipc --net --pid /bin/bash
使用建议
- 善用
--help选项:如docker run --help查看详细参数 - 使用标签管理镜像:建议为镜像添加版本标签(如
myapp:v1.0) - 定期清理资源:使用
docker system prune清理无用镜像和容器 - 配置镜像加速:国内用户可配置阿里云、网易云等镜像加速器提高下载速度
- 使用Dockerfile最佳实践:减少镜像层数、合理使用缓存、最小化镜像大小
以上命令覆盖了Docker日常使用的各个方面,可根据实际需求复制使用。部分命令可能需要管理员权限(如使用 sudo)。
更多推荐


所有评论(0)