当前位置: 首页 > ops >正文

一文读懂----Docker 常用命令

Docker 是一个强大的容器化平台,广泛用于开发、测试和生产环境。通过 Docker 命令行工具(CLI),我们可以轻松管理容器、镜像、网络和卷等资源。本文将详细介绍 Docker 的常用命令,带你熟练掌握 Docker 的核心操作命令。

在开始之前,确保你已经安装了 Docker(可以通过 docker --version 检查版本)。本文假设你对 Docker 的基本概念(如容器、镜像等)有一定了解。如果你是新手,别担心,我会尽量用通俗的语言解释每个命令。

Docker 是一个强大的容器化平台,广泛用于开发、测试和生产环境。通过 Docker 命令行工具(CLI),我们可以轻松管理容器、镜像、网络和卷等资源。本文将详细介绍 Docker 的常用命令,带你从入门到熟练掌握 Docker 的核心操作。

Docker 是一个强大的容器化平台,广泛用于开发、测试和生产环境。通过 Docker 命令行工具(CLI),我们可以轻松管理容器、镜像、网络和卷等资源。本文将详细介绍 Docker 的常用命令,带你从入门到熟练掌握 Docker 的核心操作。

一、 镜像管理相关的命令

Docker 镜像是容器的基础。

拉取镜像

docker pull [镜像名称]:[标签]
  • 如果不指定标签,默认拉取 latest 版本

列出本地所有镜像

docker images
  • -a: 显示所有镜像(包括中间层镜像)

  • -q: 只显示镜像 ID

根据 Dockerfile 构建镜像

docker build -t [镜像名称]:[标签] [Dockerfile路径]
示例:docker build -t myapp:1.0 .
  • -t 指定镜像名称和标签

  • . 表示使用当前目录下的 Dockerfile

删除本地镜像

docker rmi [镜像名称或ID]
  • -f: 强制删除,即使镜像正在被容器使用。

二、 容器管理命令

容器是 Docker 的核心。

创建并运行新容器

docker run [选项] [镜像名称] [命令]
  • -d: 后台运行

  • -p [主机端口]:[容器端口]: 端口映射

  • --name: 指定容器名称

  • -it: 交互式运行(常用于启动 shell)

列出正在运行的容器

docker ps
  • -a: 显示所有容器(包括停止的)

  • -q: 只显示容器 ID

停止运行中的容器

docker stop [容器名称或ID]

启动已停止的容器

docker start [容器名称或ID]

重启容器

docker restart [容器名称或ID]

删除容器

docker rm [容器名称或ID]
  • -f: 强制删除正在运行的容器。

在运行中的容器内执行命令

docker exec [选项] [容器名称或ID] [命令]
示例:docker exec -it my-nginx bash
  • -it 表示交互式终端,进入容器内的 bash 环境

查看容器日志

docker logs [容器名称或ID]

三、 网络管理和存储相关命令

列出所有网络

docker network ls

创建一个新的网络

docker network create [网络名称]

将容器连接到指定网络

docker network connect [网络名称] [容器名称或ID]

列出所有卷

docker volume ls

创建新的卷

docker volume create [卷名称]

运行容器时挂载卷或目录

docker run -v [主机路径或卷名称]:[容器路径] [镜像名称]

、 实用组合命令

清理无用资源

docker system prune

查看容器资源使用情况

docker stats

批量删除容器

docker rm -f $(docker ps -aq)

为现有镜像添加标签

docker tag [源镜像] [新镜像名称]:[新标签]

推送到远程仓库

docker push [镜像名称]:[标签]

查看容器内运行的进程

docker top [容器ID或名称]

重命名容器

docker rename [旧名称] [新名称]

在主机和容器之间复制文件或目录​​​​​​​

docker cp [源路径] [目标路径]
主机 → 容器:docker cp ./myfile.txt my-nginx:/app/
容器 → 主机:docker cp my-nginx:/app/myfile.txt ./

将一个或多个镜像保存为 tar 文件

docker save -o [输出文件] [镜像名称]

从 tar 文件加载镜像

docker load -i [输入文件]

将容器的当前状态保存为一个新镜像

## 启动一个容器docker run -it [镜像名称] /bin/bash
## 安装vim 然后进行修改代码apt update && apt install -y vim
## 将一个容器的当前状态保存为一个新的镜像docker commit [运行的容器ID] [新的镜像名称]

停止并删除所有容器

docker stop $(docker ps -aq) && docker rm $(docker ps -aq)

删除所有未使用的镜像

docker rmi $(docker images -q)

提取镜像的目录到本地

​​​​​​​

# 1. 创建临时容器(不启动)docker create --name temp_container [当前镜像的ID]
# 2. 只提取 /src 目录到主机当前目录下的 src_files 文件夹docker cp temp_container:/src ./src_files
# 3. 删除临时容器docker rm -f temp_container

四、 总结

以上是 Docker 的常用命令及其详细用法,涵盖了镜像管理、容器操作、网络配置和存储管理以及常用命令等方面。通过熟练掌握这些命令,你可以轻松构建、运行和管理容器化应用。建议在实际操作中多加练习,并结合官方文档(docker help 或 Docker 官网)深入学习。

如果你有特定场景或问题,欢迎关注本博客留言讨论!希望这篇文章对你有所帮助!

http://www.xdnf.cn/news/7015.html

相关文章:

  • SQL性能分析
  • 23种设计模式考试趋势分析之——适配器(Adapter)设计模式——求三连
  • IDE/IoT/搭建物联网(LiteOS)集成开发环境,基于 VSCode + IoT Link 插件
  • ubuntu18.04编译qt5.14.2源码
  • [特殊字符] SSL/TLS 中的密钥协商流程笔记
  • 进程的调度
  • SpringBoot快速上手
  • CUDA 纹理入门
  • replay下载
  • SOLID 面对象设计的五大基本原则
  • 一种基于条件约束注意力生成对抗网络的水下图像增强模型
  • 二叉树构造:从前序、中序与后序遍历序列入手
  • USB学习【11】STM32 USB初始化过程详解
  • 【AI】Ubuntu 22.04 4060Ti16G 基于SWIFT框架的LoRA微调 模型Qwen3-1.8B 数据集弱智吧 微调笔记
  • 【iOS】探索消息流程
  • 上位机知识篇---流式Web服务器模式的实现
  • STM32SPI通信基础及CubeMX配置
  • OVS练习笔记20250518
  • Kubernetes控制平面组件:Kubelet详解(五):切换docker运行时为containerd
  • Vue-监听属性
  • 报错System.BadImageFormatException:“试图加载格式不正确的程序。 (异常来自 HRESULT:0x8007000B)”
  • 面试中的线程题
  • 数据结构:二叉树一文详解
  • Linux安全第三章-系统安全及应用
  • 深入浅出Hadoop:大数据时代的“瑞士军刀”
  • 面向GIS的Android studio移动开发(二)--在地图上绘制电子围栏
  • Linux(2)——shell原理及Linux中的权限
  • 黑灰产业链深度解析
  • 最新缺陷检测模型:EPSC-YOLO(YOLOV9改进)
  • 使用 C# 入门深度学习:线性代数详细讲解