Docker使用指南(一)——镜像相关操作详解(实战案例教学,适合小白跟学)
目录
1.镜像名的组成
2.镜像操作相关命令
镜像常用命令总结:
1. docker images
2. docker rmi
3. docker pull
4. docker push
5. docker save
6. docker load
7. docker tag
8. docker build
9. docker history
10. docker inspect
11. docker prune
12. docker search
一、Docker基本操作—镜像篇
1.镜像名的组成
镜像名称一般分两部分组成:[repository] : [tag]
在没有指定 tag 时,tag 默认是latest,代表最新版本的镜像 。
2.镜像操作相关命令
下面我们用一个案例,来具体实操一下这些命令,方便大家更好的理解:
案例一:
从DockerHub中拉取一个nginx镜像并查看
① 首先去镜像仓库搜索nginx镜像,比如DockerHub:
官网:https://hubgw.docker.com/_/nginx 搜索Nginx 然后选择官方发布的镜像
② 第二步 在服务器执行命令,拉取镜像
docker pull nginx #拉取Nginx镜像
默认拉取的是最新版本的;
③ 第三步 查看刚刚拉取的镜像
docker images
案例二:
利用docker save将nginx镜像导出磁盘,然后再通过load加载回来
①步骤一:利用 docker xx-help 命令查看 docker save 的语法
解释:docker save
命令用于将 Docker 镜像保存为 tar 文件。常用于导出镜像,以便备份或传输到其他系统。
用法:
docker save [OPTIONS] IMAGE [IMAGE...]
- 参数说明:
IMAGES
需要保存的 Docker 镜像,[IMAGE...]表示可以指定多个镜像。 - 常用选项 :-o 指定输出文件的路径。若没有指定,默认会将镜像数据输出到标准输出(STDOUT)
步骤二:使用docker save导出镜像到磁盘
用法示例:
-
保存一个镜像到 tar 文件:
docker save -o myNginx.tar nginx:latest
-
保存多个镜像到一个 tar 文件:
docker save -o images.tar image1:latest image2:latest
步骤三:删除已有的nginx镜像
#通过镜像名称来删除
docker rmi nginx:latest
#也可以通过IMAGE ID来删除
docker rmi 605c77e624dd
步骤四 使用 docker load 的把 刚刚导出的镜像加载回来
首先查看使用方式:
解释:docker load
命令用于从 tar 归档文件或标准输入(STDIN)加载 Docker 镜像。
选项:
-
-i, --input string
:从指定的 tar 归档文件读取,而不是从标准输入(STDIN)读取。 -
-q, --quiet
:抑制加载输出,即不显示加载过程中的详细信息。
然后从 myNginx.tar
中加载镜像
docker load -i myNginx.tar
镜像常用命令总结:
以下是常见的 Docker 镜像操作命令及其功能:
1. docker images
- 功能:列出本地主机上的所有镜像。
- 常用选项:
-a, --all
:显示所有镜像(包括中间层镜像)。-q, --quiet
:仅显示镜像 ID。--digests
:显示镜像的摘要信息。
- 示例:
docker images
2. docker rmi
- 功能:删除本地的一个或多个镜像。
- 常用选项:
-f, --force
:强制删除镜像(即使有容器正在使用该镜像)。
- 示例:
docker rmi my_image:tag docker rmi image_id1 image_id2
3. docker pull
- 功能:从 Docker 仓库(如 Docker Hub)拉取镜像到本地。
- 常用选项:
--platform
:指定镜像的平台(如linux/amd64
)。-a, --all-tags
:拉取镜像的所有标签。
- 示例:
docker pull ubuntu:latest
4. docker push
- 功能:将本地镜像推送到 Docker 仓库(如 Docker Hub)。
- 示例:
docker push my_image:tag
5. docker save
- 功能:将一个或多个镜像保存为 tar 归档文件。
- 常用选项:
-o, --output
:指定输出文件。
- 示例:
docker save -o my_image.tar my_image:tag
6. docker load
- 功能:从 tar 归档文件或标准输入加载镜像到本地。
- 常用选项:
-i, --input
:指定输入文件。-q, --quiet
:静默模式,不显示加载过程。
- 示例:
docker load -i my_image.tar
7. docker tag
- 功能:为镜像创建一个新的标签(Tag)。
- 示例:
docker tag my_image:tag new_image:new_tag
8. docker build
- 功能:根据 Dockerfile 构建镜像。
- 常用选项:
-t, --tag
:为构建的镜像指定标签。-f, --file
:指定 Dockerfile 文件路径。
- 示例:
docker build -t my_image:tag .
9. docker history
- 功能:查看镜像的构建历史记录。
- 示例:
docker history my_image:tag
10. docker inspect
- 功能:查看镜像的详细信息(元数据)。
- 示例:
docker inspect my_image:tag
11. docker prune
- 功能:清理未使用的镜像。
- 常用选项:
-a, --all
:删除所有未使用的镜像,而不仅仅是悬空镜像。
- 示例:
docker image prune -a
12. docker search
- 功能:从 Docker Hub 搜索镜像。
- 常用选项:
--limit
:限制搜索结果的数量。--filter
:根据条件过滤搜索结果。
- 示例:
docker search ubuntu
总结
Docker 镜像操作涵盖了镜像的拉取、推送、构建、删除、保存、加载、查看和管理等功能。掌握这些命令可以帮助你高效地管理和使用 Docker 镜像。
相关文章:

Docker使用指南(一)——镜像相关操作详解(实战案例教学,适合小白跟学)
目录 1.镜像名的组成 2.镜像操作相关命令 镜像常用命令总结: 1. docker images 2. docker rmi 3. docker pull 4. docker push 5. docker save 6. docker load 7. docker tag 8. docker build 9. docker history 10. docker inspect 11. docker prune…...
Rust 变量特性:不可变、和常量的区别、 Shadowing
Rust 变量特性:不可变、和常量的区别、 Shadowing Rust 是一门以安全性和性能著称的系统编程语言,其变量系统设计独特且强大。本文将从三个角度介绍 Rust 变量的核心特性:可变性(Mutability)、变量与常量的区别&#…...

NFT Insider #167:Champions Tactics 角色加入 The Sandbox;AI 助力 Ronin 游戏生态
引言:NFT Insider 由 NFT 收藏组织 WHALE Members、BeepCrypto 联合出品, 浓缩每周 NFT 新闻,为大家带来关于 NFT 最全面、最新鲜、最有价值的讯息。每期周报将从 NFT 市场数据,艺术新闻类,游戏新闻类,虚拟…...

鹧鸪云无人机光伏运维解决方案
在新能源产业蓬勃发展的当下,光伏电站作为清洁能源供应的关键一环,其稳定运行和高效运维至关重要。随着光伏电站规模持续扩大,数量不断增加,传统人工巡检方式的弊端日益显著。人工巡检不仅效率低、人力和时间成本高,而…...

NeuralCF 模型:神经网络协同过滤模型
实验和完整代码 完整代码实现和jupyter运行:https://github.com/Myolive-Lin/RecSys--deep-learning-recommendation-system/tree/main 引言 NeuralCF 模型由新加坡国立大学研究人员于 2017 年提出,其核心思想在于将传统协同过滤方法与深度学习技术相结…...
【前端】【Ts】【知识点总结】TypeScript知识总结
一、总体概述 TypeScript 是 JavaScript 的超集,主要通过静态类型检查和丰富的类型系统来提高代码的健壮性和可维护性。它涵盖了从基础数据类型到高级类型、从函数与对象的类型定义到类、接口、泛型、模块化及装饰器等众多知识点。掌握这些内容有助于编写更清晰、结…...

JAVA架构师进阶之路
JAVA架构师进阶之路 前言 苦于网络上充斥的各种java知识,多半是互相抄袭,导致很多后来者在学习java知识中味同嚼蜡,本人闲暇之余整理了进阶成为java架构师所必须掌握的核心知识点,后续会不断扩充。 废话少说,直接上正…...

掌握@PostConstruct与@PreDestroy,优化Spring Bean的初始化和销毁
在Spring中,PostConstruct和PreDestroy注解就像是对象的“入职”和“离职”仪式。 1. PostConstruct注解:这个注解标记的方法就像是员工入职后的“岗前培训”。当一个对象(比如一个Bean)被Spring容器创建并注入依赖后,…...

Java设计模式:行为型模式→状态模式
Java 状态模式详解 1. 定义 状态模式(State Pattern)是一种行为型设计模式,它允许对象在内部状态改变时改变其行为。状态模式通过将状态需要的行为封装在不同的状态类中,实现对象行为的动态改变。该模式的核心思想是分离不同状态…...

景联文科技:专业数据采集标注公司 ,助力企业提升算法精度!
随着人工智能技术加速落地,高质量数据已成为驱动AI模型训练与优化的核心资源。据统计,全球AI数据服务市场规模预计2025年突破200亿美元,其中智能家居、智慧交通、医疗健康等数据需求占比超60%。作为国内领先的AI数据服务商,景联文…...

ES面试题
1、Elasticsearch的基本构成: (1)index 索引: 索引类似于mysql 中的数据库,Elasticesearch 中的索引是存在数据的地方,包含了一堆有相似结构的文档数据。 (2)type 类型:…...

LabVIEW2025中文版软件安装包、工具包、安装教程下载
下载链接:LabVIEW及工具包大全-三易电子工作室http://blog.eeecontrol.com/labview6666 《LabVIEW2025安装图文教程》 1、解压后,双击install.exe安装 2、选中“我接受上述2条许可协议”,点击下一步 3、点击下一步,安装NI Packa…...

算法与数据结构(合并K个升序链表)
思路 有了合并两个链表的基础后,这个的一种方法就是可以进行顺序合并,我们可以先写一个函数用来合并两个链表,再在合并K个链表的的函数中循环调用它。 解题过程 解析这个函数 首先,可以先判断,如果a为空,…...

洛谷 P4552 [Poetize6] IncDec Sequence C语言
P4552 [Poetize6] IncDec Sequence - 洛谷 | 计算机科学教育新生态 题目描述 给定一个长度为 n 的数列 a1,a2,…,an,每次可以选择一个区间 [l,r],使这个区间内的数都加 1 或者都减 1。 请问至少需要多少次操作才能使数列中的所有数都一样&#…...

保姆级教程Docker部署Zookeeper官方镜像
目录 1、安装Docker及可视化工具 2、创建挂载目录 3、运行Zookeeper容器 4、Compose运行Zookeeper容器 5、查看Zookeeper运行状态 6、验证Zookeeper是否正常运行 1、安装Docker及可视化工具 Docker及可视化工具的安装可参考:Ubuntu上安装 Docker及可视化管理…...

javaEE-6.网络原理-http
目录 什么是http? http的工作原理: 抓包工具 fiddler的使用 HTTP请求数据: 1.首行:编辑 2.请求头(header) 3.空行: 4.正文(body) HTTP响应数据 1.首行:编辑 2.响应头 3.空行: 4.响应正文…...
【戒抖音系列】短视频戒除-1-对推荐算法进行干扰
如今推荐算法已经渗透到人们生活的方方面面,尤其是抖音等短视频核心就是推荐算法。 【短视频的危害】 1> 会让人变笨,慢慢让人丧失注意力与专注力 2> 让人丧失阅读长文的能力 3> 让人沉浸在一个又一个快感与嗨点当中。当我们刷短视频时&#x…...
9.建造者模式 (Builder Pattern)
定义 建造者模式(Builder Pattern)是一种创建型设计模式,旨在将复杂对象的构建过程与它的表示分离,使得同样的构建过程可以创建不同的表示。该模式的核心思想是通过一步步地构建一个复杂的对象,每个步骤独立且可扩展&…...

OpenCV:特征检测总结
目录 一、什么是特征检测? 二、OpenCV 中的常见特征检测方法 1. Harris 角点检测 2. Shi-Tomasi 角点检测 3. Canny 边缘检测 4. SIFT(尺度不变特征变换) 5. ORB 三、特征检测的应用场景 1. 图像匹配 2. 运动检测 3. 自动驾驶 4.…...

Clion开发STM32时使用stlink下载程序与Debug调试
一、下载程序 先创建一个文件夹: 命名:stlink.cfg 写入以下代码: # choose st-link/j-link/dap-link etc. #adapter driver cmsis-dap #transport select swdsource [find interface/stlink.cfg]transport select hla_swdsource [find target/stm32f4x.…...
conda相比python好处
Conda 作为 Python 的环境和包管理工具,相比原生 Python 生态(如 pip 虚拟环境)有许多独特优势,尤其在多项目管理、依赖处理和跨平台兼容性等方面表现更优。以下是 Conda 的核心好处: 一、一站式环境管理:…...

C++_核心编程_多态案例二-制作饮品
#include <iostream> #include <string> using namespace std;/*制作饮品的大致流程为:煮水 - 冲泡 - 倒入杯中 - 加入辅料 利用多态技术实现本案例,提供抽象制作饮品基类,提供子类制作咖啡和茶叶*//*基类*/ class AbstractDr…...

springboot 百货中心供应链管理系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,百货中心供应链管理系统被用户普遍使用,为方…...

边缘计算医疗风险自查APP开发方案
核心目标:在便携设备(智能手表/家用检测仪)部署轻量化疾病预测模型,实现低延迟、隐私安全的实时健康风险评估。 一、技术架构设计 #mermaid-svg-iuNaeeLK2YoFKfao {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg…...

MODBUS TCP转CANopen 技术赋能高效协同作业
在现代工业自动化领域,MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步,这两种通讯协议也正在被逐步融合,形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...

C# 类和继承(抽象类)
抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...

04-初识css
一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...
【C语言练习】080. 使用C语言实现简单的数据库操作
080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...

NLP学习路线图(二十三):长短期记忆网络(LSTM)
在自然语言处理(NLP)领域,我们时刻面临着处理序列数据的核心挑战。无论是理解句子的结构、分析文本的情感,还是实现语言的翻译,都需要模型能够捕捉词语之间依时序产生的复杂依赖关系。传统的神经网络结构在处理这种序列依赖时显得力不从心,而循环神经网络(RNN) 曾被视为…...

智能仓储的未来:自动化、AI与数据分析如何重塑物流中心
当仓库学会“思考”,物流的终极形态正在诞生 想象这样的场景: 凌晨3点,某物流中心灯火通明却空无一人。AGV机器人集群根据实时订单动态规划路径;AI视觉系统在0.1秒内扫描包裹信息;数字孪生平台正模拟次日峰值流量压力…...