docker常用命令有哪些

发布于:2025-08-29 ⋅ 阅读:(12) ⋅ 点赞:(0)

以下是 Docker 常用命令的整理,涵盖了镜像管理、容器操作、网络和数据卷等方面:

一、镜像相关命令

  1. 查看本地镜像

    docker images
    # 简洁显示
    docker images -q
    
  2. 拉取镜像

    docker pull [镜像名]:[标签]
    # 示例:拉取最新版nginx
    docker pull nginx:latest
    
  3. 搜索镜像

    docker search [镜像名]
    # 示例:搜索ubuntu镜像
    docker search ubuntu
    
  4. 删除镜像

    docker rmi [镜像ID/镜像名]
    # 强制删除(即使有容器使用)
    docker rmi -f [镜像ID/镜像名]
    
  5. 构建镜像

    docker build -t [镜像名]:[标签] [Dockerfile所在目录]
    # 示例:当前目录构建名为myapp的镜像
    docker build -t myapp:1.0 .
    

二、容器相关命令

  1. 查看容器

    # 查看运行中的容器
    docker ps
    # 查看所有容器(包括停止的)
    docker ps -a
    # 查看最近创建的容器
    docker ps -l
    
  2. 创建并启动容器

    docker run [选项] [镜像名] [命令]
    # 常用选项:
    # -d: 后台运行
    # -p: 端口映射(宿主端口:容器端口)
    # -v: 数据卷挂载(宿主目录:容器目录)
    # --name: 指定容器名
    # -it: 交互式终端
    
    # 示例:启动nginx并映射80端口
    docker run -d -p 80:80 --name mynginx nginx
    
  3. 启动/停止/重启容器

    docker start [容器ID/容器名]
    docker stop [容器ID/容器名]
    docker restart [容器ID/容器名]
    
  4. 进入容器

    # 进入正在运行的容器(推荐)
    docker exec -it [容器ID/容器名] /bin/bash
    # 或使用sh
    docker exec -it [容器ID/容器名] sh
    
  5. 删除容器

    docker rm [容器ID/容器名]
    # 强制删除运行中的容器
    docker rm -f [容器ID/容器名]
    # 删除所有停止的容器
    docker container prune
    
  6. 查看容器日志

    docker logs [容器ID/容器名]
    # 实时查看日志
    docker logs -f [容器ID/容器名]
    

三、数据卷相关命令

  1. 创建数据卷

    docker volume create [卷名]
    
  2. 查看数据卷

    docker volume ls
    
  3. 查看数据卷详情

    docker volume inspect [卷名]
    
  4. 删除数据卷

    docker volume rm [卷名]
    # 删除未使用的数据卷
    docker volume prune
    

四、网络相关命令

  1. 查看网络

    docker network ls
    
  2. 创建网络

    docker network create [网络名]
    # 示例:创建桥接网络
    docker network create --driver bridge mynetwork
    
  3. 连接容器到网络

    docker network connect [网络名] [容器名]
    
  4. 断开容器与网络的连接

    docker network disconnect [网络名] [容器名]
    

五、其他常用命令

  1. 查看Docker系统信息

    docker info
    
  2. 查看命令帮助

    docker [命令] --help
    # 示例:查看run命令帮助
    docker run --help
    
  3. 清理无用资源(镜像、容器、网络、数据卷)

    docker system prune
    # 强制清理(包括未使用的镜像)
    docker system prune -a
    

这些命令覆盖了 Docker 日常使用的大部分场景,根据实际需求可以组合使用不同的选项来完成更复杂的操作。