Docker镜像的理解

docker 镜像详解 镜像本质上是一个只读文件,包含了文件系统、源码、库文件、依赖、工具等运行应用程序所必须的文件。它可以被理解为一个模板,通过这个模板可以实例化出很多容器。每个容器都是镜像的一个运行实例,包含了运行应用程序所需的所有内容,如代码、运行时环境、系统工具和库。具体来说,容器镜像通常是由多层文件系统叠加而成的,每一层都包含了一些特定的文件或配置。这些层是联合文件系统(Union File System)的一部分,它们可以被组合在一起以形成一个完整的镜像。 阅读详情

        通过学习,我们知道镜像是docker的基础,你想搭建各种复杂的容器环境,镜像是必不可少的。所以我们应该对镜像有更多的一些了解,我们之前知道了,容器是镜像通过run命令得到的,镜像通过pull拉取等等。但是镜像是什么我们并不很清楚。

1. Docker镜像是什么?

        Docker镜像是一种轻量级、可执行(run命令执行)的独立的软件包,镜像包含了软件运行所需的所有内容,例如把应用程序和配置依赖打包好形成一个可交付的运行环境(包括代码、运行时需要的库、环境变量和配置文件等),这个打包好的运行环境就是image镜像文件。docker的容器实例只有通过镜像image才可以创建出来。

2. Docker的镜像分层

        Docker的镜像是一层一层叠加的,我的理解是,某个镜像会基于一个基底,然后通过每次添加新功能,一次新功能的叠加就是新加一层,最终得到我们需要的镜像,所以我们在pull镜像的时候,下载的时候可以看到很多download,如图:

 下载过程中,每一个pull,就是一层。这个一层一层就是联合文件系统(UnionFS)。UnionFS文件系统是一种分层、轻量级且高性能的文件系统。联合文件系统是Docker镜像的基础,镜像可以通过分层来进行继承,这个继承我的理解是,已经存在的,可以复用的意思。

3. Docker镜像的加载原理

        Docker镜像是由一层一层的文件系统组成,这种层级基础是联合文件系统UnionFS,联合文件系统UnionFS由两部分bootfs和rootfs两者组成。

  • bootfs(boot file system) 主要包含bootloader(boot加载器)和kernel(内核), bpotloader 主要是引导加载kernel,加载镜像的时候,会通过bootloader加载kernal,Docker镜像最底层是bootfs,当boot加载完成后整个kernal内核都在内存中了,bootfs也就可以卸载,值得注意的是,bootfs是被所有镜像共用的,许多镜像images都是在base image(rootfs)基础上叠加的
  • rootfs (root file system),在bootfs之上。包含的就是典型Linux系统中的/dev,/proc,/bin,/etc等标准目录和文件。rootfs就是各种不同的操作系统发行版,比如Centos等等

镜像的制作都是基于这个文件系统来操作的,镜像可以通过一个图来理解

 最开始只有bootsfs和基础image,然后添加A,B,得到我们想要的镜像。这些是我对镜像的学习与理解的总结了!

什么是Docker?一文带你全面理解Docker镜像的技术原理 docker镜像是一个只读的docker容器模板,含有启动docker容器所需的文件系统结构及其内容,因此是启动一个docker容器的基础。docker镜像的文件内容以及一些运行docker容器的配置文件组成了docker容器的静态文件系统运行环境:rootfs。可以这么理解,docker镜像是docker容器的静态视角,docker容器是docker镜像的运行状态。 我们可以通过下图来理解docker daemon、docker镜像以及docker容器三者的关系 从上图中我们可以看到,当由ubun 阅读详情

相关推荐

MaxEnt软件的下载与安装

1、下载网站:http://lucky-boy.ys168.com/ (这是之前在网上搜到的,里面有许多软件安装包,感谢网页主的资源共享,违权必删)

weixin_42191203的博客 2万+

Docker 镜像是什么?

Docker 镜像(Docker Image)是用于创建 Docker 容器的只读模板。它包含了运行应用程序所需的所有内容,包括代码、运行时环境、库、环境变量以及配置文件。Docker 镜像是构建和分发应用程序的基础。

常备不懈 2418

transformer优化(一)-UNeXt 学习笔记

​它在早期阶段使用卷积,在潜在空间阶段使用 MLP。通过一个标记化的 MLP 块来标记和投影卷积特征,并使用 MLP 对表示进行建模。 ​

PLANTTHESON的博客 2033

Docker镜像,什么是Docker镜像,Docker基本常用命令

镜像是一种轻量级,可执行的独立软件包,也可以说是一个精简的操作系统。镜像中包含应用软件及应用软件的运行环境,具体来说镜像包含运行某个软件所需的所有内容,包括代码,库,环境变量和配置文件等。几乎所有的应用,直接打包为Docker镜像后就可以运行。由于镜像运行时是容器,容器的设计初衷就是快熟和小巧,所以镜像通常都比较小,镜像中不包含内核,其共享宿主机的内核:镜像中只包含简单的shell,或者没有shell。docker镜像由一些松耦合的只读镜像组成,

专注于全栈开发领域 2968

Python-Opencv中的膨胀和腐蚀

Python-Opencv中的膨胀和腐蚀 腐蚀和膨胀是对白色部分(高亮部分)而言的,不是黑色部分。 膨胀就是图像中的高亮部分进行膨胀,“邻域扩张”,效果图拥有比原图更大的高亮区域。腐蚀就是原图中高亮部分被腐蚀,“邻域被蚕食”,效果图拥有比原图更小的高亮区域。 1.膨胀 膨胀过程是有一个结构元素或者模板去在原图像素比对,当比对过程中,中心像素位置的值根据其八邻域取或运算,或运算为1就取自己的中心值,...

qq_44262417的博客 1万+

配置Dot1q终结子接口实现跨设备VLAN间通信示例

示例图 一.实验目的 1.配置Dot1q终结子接口实现跨设备VLAN间通信示例 二.注意事项 1.Dot1q终结子接口和QinQ终结子接口不支持透传不带VLAN Tag的报文, 收到不带VLAN Tag的报文会直接丢弃 2.由于三层以太网子接口不支持VLAN报文,当它收到VLAN报文时,会将VLAN报文当成是 非法报文而丢弃,因此,需要在子接口上将VLAN Tag剥掉,也就是需要VLAN终结 三.VLAN终结简介 1.VLAN终结的实质包含两个方面: ①.对接口接收到报文,剥除VLAN标

qq_44751470的博客 7097

Docker镜像介绍

Docker镜像介绍

qq_40619119的博客 900

告别复杂编码!用GNURadio + VLC + USRP三步搞定无线视频“直播”(附ffmpeg转码命令)

本文介绍了一种基于GNURadio、VLC和USRP的无线视频传输方案,无需复杂编码即可实现实时视频传输。通过三步流程(工具准备、音频验证、视频传输)和ffmpeg转码命令,帮助用户快速搭建系统,适用于教学演示和原型开发。方案特别强调实时显示效果和带宽优化技巧。

weixin_31714129的博客 359

Docker学习--镜像

Docker 镜像(Docker Image)是一个可执行的软件包,其中包含运行应用程序所需的所有内容,包括代码、运行时、库、环境变量和配置文件等。Docker 镜像非常轻量级,它们是基于分层的文件系统构建的,因此许多 Docker 镜像可以共享相同的基础镜像,这也使得它们在存储和传输时非常高效。以下是 Docker 镜像的一些特点:Docker 镜像是只读的,一旦创建就不能被更改,任何更改都会生成新的镜像。

qq_34185872的博客 3104

【RT-DETR涨点改进】全网独家首发Conv改进篇 | SCI一区 2025 | RT-DETR引入轻量级CGHalfConv通道分组半卷积模块,含多种创新改进、有效提升检测精度

本文介绍引入 GC Half-convolution 模块可以显著提升 RT-DETR 在资源受限环境下的性能。该模块通过通道分组与半卷积结合,有效减少了参数量与计算量,增强了模型对不同尺度和复杂背景下目标的特征提取能力。在保持模型轻量化的同时,GC Half-convolution 能够更细致地区分目标的边缘纹理、颜色、结构等关键信息,从而提升检测精度。特别是在面对小目标、多类别、形态相近的目标时,该模块能提取更具判别性的局部与全局特征,优化 RT-DETR 的检测效果,并加快推理速度。

Ai缝合怪、助力小伙伴高效发论文 745

【Qwen2微调实战】LLaMA-Factory框架对Qwen2-7B模型的微调实践

在人工智能的浪潮中,大型语言模型(LLMs)正逐渐成为研究和应用的热点。它们在自然语言处理(NLP)的各个领域,如文本生成、翻译、问答等任务中展现出了卓越的能力。Qwen2-7B模型,作为该领域的佼佼者,不仅因其庞大的参数量和强大的表示能力受到关注,更因其在微调后能够更好地适应特定任务而备受关注。本文将详细介绍如何利用LLaMA-Factory这一高效的微调框架对Qwen2-7B进行微调,以期达到提升模型在特定任务上的表现。

寻道AI,探索AI无限可能! 2万+

深入理解Docker容器和镜像

翻译:杨润青这篇文章希望能够帮助读者深入理解Docker的命令,还有容器(container)和镜像(image)之间的区别,并深入探讨容器和运行中的容器之间的区别。当我对Docker技...

独行侠梦的博客 1515

24、水下传感器网络中混合LEACH协议与遗传算法获取路由节点

本文提出了一种结合遗传算法与LEACH协议的混合路由方案,用于提升水下无线传感器网络(UWSN)的能量利用效率和数据传输稳定性。通过遗传算法优化簇头选择与路径规划,有效避免节点过早死亡,减少能量消耗,在200个节点场景下显著提升网络寿命。相比传统LEACH协议,该方案具有更高的能量利用率、更强的环境适应性,并支持传输历史记录与并行传输序列。实验结果显示,该方案在总能量为2000焦耳时剩余能量达75.6%,远优于LEACH的34.8%能耗表现。适用于海洋监测、石油平台监控及水下灾害预警等复杂环境应用。

i8j9k0l1的博客 112

Docker容器:深入理解Docker镜像文件、镜像、容器与环境,学习docker的命令

本文介绍了 Docker 的核心概念:镜像文件、镜像、容器和 Docker 环境。镜像文件是离线存储的镜像,可用于备份和传输;镜像是容器的模板,容器则是镜像的运行实例。Docker 环境是用于管理镜像和容器的平台。文中还提供了镜像与容器的转换及管理命令,如导出、导入镜像,启动、停止容器等。此外,讲解了容器的状态管理和数据持久化操作,帮助读者更好地理解 Docker 并应用于实际开发和部署中。

qq_36545573的博客 3282

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Docker——理解好镜像和容器的关系

关注公众号,大家可以在公众号后台回复“博客园”,免费获得作者 Java 知识体系/面试必看资料。 镜像也是 docker 的核心组件之一,镜像时容器运行的基础,容器是镜像运行后的形态。前面我们介绍了容器的用法,今天来和大家聊聊镜像的问题。 ​本文是本系列的第四篇,阅读前面文章有助于更好的理解本文: 1.Docker 入门及安装[Docker 系列-1] 2.Docker ...

weixin_38169206的博客 468

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

理解Docker镜像层

Docker镜像层是构建和运行容器的基础,理解它的工作原理对于高效使用Docker至关重要。在实际操作中,我们通常会使用Dockerfile来自动化这些步骤,而不是手动创建和提交容器的更改。但是,手动操作可以帮助我们更好地理解Docker镜像层的工作原理。

美味小鱼的杂货铺 660

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Docker-理解镜像构成

我们之前就了解到了,docker的镜像并非是一个整体镜像,而是一个分层存储,每一层都是在前一层的基础上进行的修改,而容器也是这样的,是多层存储的 我们现在来启动一个镜像 $ docker run --name webnginx -d -p 80:80 nginx -p:表示将容器内的80端口映射到物理机的80端口 -d:后台运行 当运行起来...

weixin_34319640的博客 346

10张图带你深入理解Docker容器和镜像_容器 镜像 详情 开源

即便是这个ubuntu容器不再运行,我们依旧能够在主机的文件系统上找到这个新文件。

2401_86394162的博客 1077

docker镜像的分层理解,大白话跟你讲

大家好,今天分享docker镜像的分层理解 我们拉取Redis 镜像 [root@localhost ~]# docker pull redis Using default tag: latest latest: Pulling from library/redis a2abf6c4d29d: Pull complete c7a4e4382001: Pull complete 4044b9ba67c9: Pull complete c8388a79482f: Pull complete 413c8b

weixin_47556601的博客 2179

Docker镜像理解

一、什么是镜像 镜像是一种轻量级、可执行的独立软件包,它包含运行某个软件所需的所有内容,我们把应用程序和配置依赖打包好形成一个可交付的运行环境(包括代码、运行时所需的库、环境变量和配置文件等),这个打包好的运行环境就是镜像文件。 只有通过镜像才能生成Docker容器实例 镜像是分层的,如下图: 二、联合文件系统UnionFS 其是一种分层、轻量级并且高性能的文件系统,它支持**对文件系统的修改作为一次提交来一层层的叠加,**同时可以将不同目录挂载到同一个虚拟文件系统下。其是docker镜像的基础。镜

Answer0902的博客 1462

【docker镜像简单理解】

【docker概率简单理解】

敖丙007的博客 1056

面向对象视角下,理解Docker 镜像容器和仓库

从面向对象的角度出发,来看看Docker的镜像,容器和仓库,相信这一文过后你会理解的透透的💖

很高兴你能看到这里 1万+

【Docker】Docker镜像是什么?浅谈对Docker镜像的理解

Docker镜像是什么?浅谈对Docker镜像的理解

Sihang_Xie的博客 3257

理解Docker镜像

理解Docker镜像 Docker image概念介绍 简单来说,Docker image是用来启动容器的只读模板,是容器启动所需要的rootfs,类似于虚拟机所使用的镜像。首先需要通过一定的规则和方法Docker image。 Remote-dockerhub.com/namespace/bar:latest Docker镜像的表示方式,可以看到其被’/'分成三个部分,其中每部分都可以类比Github中的概念。 Remote docker hub:集中存储镜像的Web服务器地址。该部分的存在使得可以区

shi_zi_183的博客 1212
上一篇: Docker容器命令汇总
下一篇: 使用Java体验RabbitMQ消息的发送与消费过程
~小爷.
博客等级 码龄9年 26粉丝 49原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值