自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

原创 push重复的镜像会怎么样?

以alpine镜像为例。

2023-06-01 16:38:09 554

原创 docker manifest中最底层是最前面的还是最后面的

最后一行是新增的层所以最底层应该是layers列表中的第一个层。

2023-04-04 10:29:37 285

原创 docker实现文件改动的原理

当我们需要删除文件file1时,由于文件file1是镜像层的文件,此时会在容器最上层中创建一个.wh开头的隐藏文件,从而将文件file1隐藏掉,所以文件file1并未被删除掉,这样也就保证了镜像层数据的完整性和复用性。打开.wh文件没有任何内容,而我删除的文件名为testR,对应的.wh文件名就是.wh.testR,所以是否说是根据文件名来识别,.wh.后跟的内容就是要隐藏的文件。而testRemove只剩下了空目录,因为前面的层都是只读的,那这里光一个空目录如何实现对前面层中testR文件的删除呢?

2023-03-27 15:07:58 227

原创 【论文笔记】Slimmer: Weight Loss Secrets for Docker Registries

本文分析了167TB的解压缩后的Docker镜像数据,发现Docker中只有3%的唯一文件,其他都存在冗余,而Docker现有的层共享机制不能消除这种文件级冗余,所以本文提出了Slimmer——支持文件级重复数据删除的Docker registry,并对其性能影响进行了基于仿真的分析。

2023-03-01 09:54:01 139

原创 【论文笔记】基于容器访问模式的Docker缓存策略研究

即在registry端和后端存储端都建立预取缓存,优先去registry内存中找,找不到去后端存储内存中找,只要在这两个地方找到都算缓存命中。缓存未命中的话再去后端存储的硬盘中提取。

2023-02-28 21:48:44 129

原创 【论文笔记】Carving Perfect Layers out of Docker Images

当前Docker Hub中已存储超千万个镜像,并使用层共享方式来减少冗余(即层级重复数据删除),但是由于Docker镜像开发规范的不完善,再加上开发人员常常自己创建docker镜像层而不是直接使用已经存在的层等原因,导致Docker中存在大量的几乎相同又不完全相同的层,在层级重复数据删除的背景下这些层都会被识别为unique层进行存储,因此产生了大量的冗余。所以本文章提出了对docker数据中心中的所有镜像进行重组,即将所有的层打散为文件,再将这些文件重组为新的层,以减少冗余,降低存储开销。

2023-02-06 10:05:51 139 1

原创 python如何在一个线程start后给这个线程追加新的任务

方法等待队列中的所有任务完成,然后再将 "stop" 任务添加到队列中。这样可以确保在终止线程之前所有任务都已完成。可以使用队列(Queue)来在线程中添加新的任务。队列是一种线程安全的数据结构,可以在多个线程之间安全地传递数据。方法向队列中添加新的任务。任务将按照添加的顺序依次执行。下面是一个示例,该示例定义了一个线程类。,该线程从队列中获取任务并执行。在这个例子中,你可以使用。请注意,你还需要使用。

2022-12-26 10:01:47 255

原创 python实现并行的方法

python实现并行的方法

2022-12-19 16:35:11 7141

原创 客户端(本地)docker镜像存储结构

在目录下有distribution 、 imagedb 、 layerdb 三个目录和 repositories.json文件。

2022-11-07 10:13:23 2819

原创 【论文笔记】基于镜像层关联的 Docker注册表缓存预取策略

参考自:张晨,邓玉辉.基于镜像层关联的Docker注册表缓存预取策略[J].计算机科学与探索,2021,15(02):249-260.

2022-11-04 14:44:42 166 2

原创 私有docker registry V2的pull和push流程——HTTP

pull一个镜像的时候客户端要先向registry发送获取manifest请求,获取到manifest后客户端要验证manifest签名的真实性以确保名称(镜像名吗?每个layer都以一个blob的形式存储在registry中,以摘要作为关键字来标识不同的layer。push流程与pull相反,组装好镜像manifest后要先push各个layer,待所有layer都被push到registry中后再上传签名的manifest。通过url中的name和reference参数来标识镜像(必要参数)。

2022-10-11 21:40:22 1584

原创 DupHunter复读笔记

DupHunter——第一个自带重删功能的registry:原生的文件级重复数据删除以及多种重删模式提供了不同级别的存储效率、持久性和性能。减少了高达6.9×的存储空间双层存储结构(P-server集群和D-server集群),基于用户访问模式的预取/预构造缓存。与最新技术相比DupHunter可以将GET层延迟减少到2.8×保留指定数量的层副本直接存储(P-server cluster),不进行解压和重删,访问这些不会产生恢复开销。

2022-09-23 15:43:48 369

原创 关闭或启动linux防火墙后,docker启动容器报错问题解决方式​​​​​​​

.

2022-09-09 16:20:50 1130

原创 误删/var/lib/docker/overlay2中的文件如何修复,以及docker image垃圾清理

docker

2022-07-18 12:55:48 4118 2

原创 docker删除镜像

.

2022-07-17 13:42:26 348

原创 go: missing Bazaar command.

.

2022-07-04 11:46:00 85

原创 【论文笔记】DupHunter: Flexible High-Performance Deduplication for Docker Registries

对docker镜像的重复数据删除

2022-07-03 09:27:24 353 1

原创 linux解压.gz和tar.gz命令

解压FileName.gz或者对于FileName.tar.gz只想解压.gz而不解开.tar,可以用以下命令:gzip -d FileName.gz(或者FileName.tar.gz)若要直接解压FileName.tar.gz可以用:tar -zxvf FileName.tar.gz

2022-05-16 16:38:27 339

原创 dockerfile命名

直接命名为Dockerfile,不需要扩展名

2021-09-14 16:20:40 871

原创 VMware Workstation 无法连接到虚拟机。请确保您有权运行该程序、访问该程序使用的所有目录以及访问所有临时文件目录。 未能将管道连接到虚拟机: 系统找不到指定的文件。

今天碰到了VMware Workstation 无法连接到虚拟机。请确保您有权运行该程序、访问该程序使用的所有目录以及访问所有临时文件目录。 未能将管道连接到虚拟机: 系统找不到指定的文件问题,应该是上次关闭虚拟机时出现了问题。最终如下用如下方法解决:1.右键VMware选择属性,进入兼容性界面,把以管理员身份运行勾上2.再次打开虚拟机发现出现新错误:VMX进程已提前退出解决方案:打开开始菜单设置应用下拉找到VMware点击修改选择下一歩点击修复修复...

2021-09-14 09:58:47 26068 5

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除