标签搜索
侧边栏壁纸
  • 累计撰写 7 篇文章
  • 累计收到 0 条评论

docker命令

你的云
2026-05-20 / 0 评论 / 2 阅读 / 正在检测是否收录...

一、基础信息查看

bash

docker version          # 显示Docker版本信息
docker info            # 显示Docker系统信息(容器、镜像数量等)
docker system df       # 查看磁盘使用情况

二、镜像管理

bash

docker images          # 列出本地镜像
docker search nginx    # 在Docker Hub搜索镜像
docker pull nginx:latest   # 拉取镜像
docker push username/nginx:latest   # 推送镜像到仓库
docker rmi nginx:latest     # 删除镜像(可加-f强制)
docker build -t myapp:1.0 .    # 基于Dockerfile构建镜像
docker tag nginx:latest mynginx:1.0   # 给镜像打标签
docker save -o mynginx.tar nginx:latest   # 导出镜像为tar文件
docker load -i mynginx.tar     # 从tar文件导入镜像
docker history nginx:latest    # 查看镜像构建历史
docker commit container_name myimage:1.0   # 将容器保存为新镜像

三、容器生命周期管理

bash

# 创建并运行容器
docker run nginx:latest          # 基本运行
docker run -it ubuntu /bin/bash  # 交互式运行
docker run -d nginx              # 后台运行
docker run --name mynginx -p 80:80 nginx   # 指定名称和端口映射
docker run -v /host:/container nginx       # 挂载卷
docker run --restart=always nginx          # 自动重启

# 容器控制
docker ps                  # 列出运行中的容器
docker ps -a              # 列出所有容器(包括已停止)
docker start container_id # 启动已停止的容器
docker stop container_id  # 停止运行中的容器
docker restart container_id # 重启容器
docker pause container_id  # 暂停容器
docker unpause container_id # 恢复暂停的容器
docker rm container_id     # 删除容器(加-f强制删除运行中的)
docker rm $(docker ps -aq) # 删除所有容器

# 进入容器
docker exec -it container_id /bin/bash   # 在运行中的容器执行命令
docker attach container_id   # 附加到运行中的容器(不推荐)

# 容器状态
docker logs container_id     # 查看容器日志
docker logs -f container_id  # 实时跟踪日志
docker top container_id      # 查看容器内进程
docker stats container_id    # 查看容器资源占用
docker inspect container_id  # 查看容器详细信息
docker port container_id     # 查看容器端口映射

四、网络管理

bash

docker network ls                 # 列出所有网络
docker network inspect bridge     # 查看网络详情
docker network create mynet       # 创建自定义网络
docker network create --driver bridge --subnet 172.20.0.0/16 mynet  # 指定子网
docker network connect mynet container_id    # 将容器连接到网络
docker network disconnect mynet container_id # 断开容器网络
docker network rm mynet           # 删除网络
docker network prune              # 删除所有未使用的网络

五、数据卷管理

bash

docker volume ls              # 列出所有卷
docker volume create myvol    # 创建卷
docker volume inspect myvol   # 查看卷详情
docker volume rm myvol        # 删除卷
docker volume prune           # 删除所有未使用的卷

六、镜像仓库(Registry)

bash

docker login                 # 登录到Docker Hub
docker logout               # 登出
docker push username/image:tag   # 推送镜像
docker pull username/image:tag   # 拉取镜像

七、系统清理

bash

docker system prune         # 删除所有停止的容器、未使用的网络、悬空镜像
docker system prune -a      # 更彻底清理(包括未使用的镜像)
docker container prune      # 删除所有停止的容器
docker image prune          # 删除未使用的镜像
docker volume prune         # 删除未使用的卷
docker network prune        # 删除未使用的网络

八、Docker Compose(多容器编排)

bash

# 基本命令(注意:没有横杠)
docker compose up           # 启动服务
docker compose up -d        # 后台启动
docker compose down         # 停止并删除容器、网络
docker compose down -v      # 同时删除数据卷

# 查看与管理
docker compose ps           # 查看容器状态
docker compose ls           # 列出所有运行中的项目
docker compose logs         # 查看日志
docker compose logs -f      # 实时跟踪日志
docker compose top          # 查看容器内进程

# 构建与镜像
docker compose build        # 构建或重建服务
docker compose build --no-cache  # 不使用缓存构建
docker compose pull         # 拉取服务镜像
docker compose push         # 推送服务镜像

# 容器操作
docker compose start        # 启动服务
docker compose stop         # 停止服务
docker compose restart      # 重启服务
docker compose pause        # 暂停服务
docker compose unpause      # 恢复服务
docker compose kill         # 强制停止服务

# 进入容器
docker compose exec service_name /bin/bash   # 在运行中的服务执行命令
docker compose run service_name /bin/bash    # 运行一次性命令(新容器)

# 配置与调试
docker compose config       # 验证并查看配置
docker compose config --services   # 列出所有服务
docker compose events       # 实时查看容器事件
docker compose port service_name 80  # 查看端口映射

# 扩缩容
docker compose up --scale web=3 -d   # 扩展服务实例数

# 清理
docker compose down --rmi all        # 删除容器并删除所有镜像
docker compose down --volumes        # 删除容器和数据卷
docker compose rm                    # 删除已停止的容器

# 查看依赖关系
docker compose images       # 查看使用的镜像
docker compose version      # 查看版本信息

九、实用技巧组合

bash

# 删除所有停止的容器
docker container prune

# 删除所有未打标签的镜像(悬空镜像)
docker rmi $(docker images -f "dangling=true" -q)

# 停止所有运行中的容器
docker stop $(docker ps -q)

# 删除所有容器(包括运行中的)
docker rm -f $(docker ps -aq)

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

# 进入容器调试(推荐)
docker exec -it container_id sh

# 查看容器IP地址
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' container_id

快速参考:常用参数

  • -d:后台运行
  • -it:交互模式(-i交互,-t分配伪终端)
  • -p:端口映射 主机端口:容器端口
  • -v:挂载卷 主机路径:容器路径
  • --name:指定容器名称
  • --rm:容器停止后自动删除
  • -e:设置环境变量
  • --restart:重启策略(no/on-failure/always/unless-stopped)
  • -m:限制内存使用
  • --cpus:限制CPU使用

提示:大部分命令都有简写形式(如 docker ps 而不是 docker container ls),建议先从基础命令开始练习,逐步掌握。需要特定命令的详细用法,可以用 docker 命令 --help 查看帮助。

0

评论

博主关闭了所有页面的评论