Skip to content

Commit

Permalink
Site updated: 2024-01-17 20:26:28
Browse files Browse the repository at this point in the history
  • Loading branch information
hebinbin1 committed Jan 17, 2024
1 parent a6445e1 commit 56751cc
Show file tree
Hide file tree
Showing 7 changed files with 59 additions and 158 deletions.
20 changes: 10 additions & 10 deletions 2024/01/14/cloud-native/oci/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
<meta property="og:image" content="https://so2bin.github.io/2024/01/14/cloud-native/oci/overlay2.png">
<meta property="og:image" content="https://so2bin.github.io/2024/01/14/cloud-native/oci/overlay-view.png">
<meta property="article:published_time" content="2024-01-14T08:01:07.000Z">
<meta property="article:modified_time" content="2024-01-17T01:53:16.918Z">
<meta property="article:modified_time" content="2024-01-17T12:25:33.317Z">
<meta property="article:author" content="so2bin">
<meta property="article:tag" content="Cloud Native">
<meta property="article:tag" content="OCI">
Expand Down Expand Up @@ -242,7 +242,7 @@ <h1 class="post-title" itemprop="name headline">
<i class="far fa-calendar-check"></i>
</span>
<span class="post-meta-item-text">更新于</span>
<time title="修改时间:2024-01-17 09:53:16" itemprop="dateModified" datetime="2024-01-17T09:53:16+08:00">2024-01-17</time>
<time title="修改时间:2024-01-17 20:25:33" itemprop="dateModified" datetime="2024-01-17T20:25:33+08:00">2024-01-17</time>
</span>


Expand Down Expand Up @@ -280,21 +280,21 @@ <h3 id="OCI镜像格式标准"><a href="#OCI镜像格式标准" class="headerlin
<p><a target="_blank" rel="noopener" href="https://www.rectcircle.cn/posts/oci-image-spec/">https://www.rectcircle.cn/posts/oci-image-spec/</a><br><a target="_blank" rel="noopener" href="https://github.com/opencontainers/image-spec">https://github.com/opencontainers/image-spec</a></p>
</blockquote>
<ul>
<li><p>OCI定义了镜像的格式规范:即镜像的文件和目录结构,相关的配置协议格式等;</p>
</li>
<li><p>如下图为一demo示图:<br><img src="/2024/01/14/cloud-native/oci/oci-image.png" alt="OCI Image"></p>
</li>
<li>OCI定义了镜像的格式规范:即镜像的文件和目录结构,相关的配置协议格式等;</li>
<li>如下图为一demo示图:<br><img src="/2024/01/14/cloud-native/oci/oci-image.png" alt="OCI Image"></li>
</ul>
<span id="more"></span>

<ul>
<li><p>下图为容器层和镜像层的关系图:</p>
<img src="/2024/01/14/cloud-native/oci/container-image.png" width="50%" style="margin: 0 auto;">
</li>
<li><p>可以通过<code>skopeo</code>工具将docker镜像导出为OCI标准目录;</p>
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line"><span class="comment"># 如该命令为利用skopeo镜像完成将nginx镜像导出OCI标准目录</span></span><br><span class="line">docker run --<span class="built_in">rm</span> -v ./:/data quay.io/skopeo/stable:latest copy docker://nginx:latest oci:/data/nginx</span><br></pre></td></tr></table></figure>
<p>如下所示:</p>
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line">hbb@hbb:~/tmp/oci$ tree nginx/</span><br><span class="line">nginx/</span><br><span class="line">├── blobs</span><br><span class="line">│   └── sha256</span><br><span class="line">│   ├── 161ef4b1bf7effb350a2a9625cb2b59f69d54ec6059a8a155a1438d0439c593c</span><br><span class="line">│   ├── 2d455521f76cee8b8b2e21457075cc500c60373d70acb217f12838818fc3da90</span><br><span class="line">│   ├── 2f44b7a888fa005d07c031d3cfad2a1c0344207def2ab9dbb97712425ff812c1</span><br><span class="line">│   ├── 35497dd96569b9139cd388fd7107df32ccdc1449b205536bce0968b2dec3e7dc</span><br><span class="line">│   ├── 36664b6ce66b304efa7ba48eb960133a085c2ec800a9f8887df94a82679334c1</span><br><span class="line">│   ├── 8056d2bcf3b682573ee5b0c176c1209df285d5be0df98ec6ae08bf7421179b74</span><br><span class="line">│   ├── 8b7dd3ed1dc34cc1caba38bbbf22bceda5bd2e7c4e1b3c11ca64cda2ed186a2c</span><br><span class="line">│   ├── a8758716bb6aa4d90071160d27028fe4eaee7ce8166221a97d30440c8eac2be6</span><br><span class="line">│   └── dc9c4fdb83d69ef5986ec344c6b75606b3a417c7434268cb6995962be5312f14</span><br><span class="line">├── index.json</span><br><span class="line">└── oci-layout</span><br></pre></td></tr></table></figure>
<span id="more"></span>
<p>可以看到OCI镜像由以下内容组成:</p>
</li>
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line">hbb@hbb:~/tmp/oci$ tree nginx/</span><br><span class="line">nginx/</span><br><span class="line">├── blobs</span><br><span class="line">│   └── sha256</span><br><span class="line">│   ├── 161ef4b1bf7effb350a2a9625cb2b59f69d54ec6059a8a155a1438d0439c593c</span><br><span class="line">│   ├── 2d455521f76cee8b8b2e21457075cc500c60373d70acb217f12838818fc3da90</span><br><span class="line">│   ├── 2f44b7a888fa005d07c031d3cfad2a1c0344207def2ab9dbb97712425ff812c1</span><br><span class="line">│   ├── 35497dd96569b9139cd388fd7107df32ccdc1449b205536bce0968b2dec3e7dc</span><br><span class="line">│   ├── 36664b6ce66b304efa7ba48eb960133a085c2ec800a9f8887df94a82679334c1</span><br><span class="line">│   ├── 8056d2bcf3b682573ee5b0c176c1209df285d5be0df98ec6ae08bf7421179b74</span><br><span class="line">│   ├── 8b7dd3ed1dc34cc1caba38bbbf22bceda5bd2e7c4e1b3c11ca64cda2ed186a2c</span><br><span class="line">│   ├── a8758716bb6aa4d90071160d27028fe4eaee7ce8166221a97d30440c8eac2be6</span><br><span class="line">│   └── dc9c4fdb83d69ef5986ec344c6b75606b3a417c7434268cb6995962be5312f14</span><br><span class="line">├── index.json</span><br><span class="line">└── oci-layout</span><br></pre></td></tr></table></figure></li>
</ul>
<p>可以看到OCI镜像由以下内容组成:</p>
<h4 id="1-oci-layout"><a href="#1-oci-layout" class="headerlink" title="1. oci-layout"></a>1. oci-layout</h4><ul>
<li>该文件为镜像布局版本号</li>
</ul>
Expand Down
6 changes: 4 additions & 2 deletions 2024/01/16/cloud-native/containerd/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
<meta property="og:image" content="https://so2bin.github.io/2024/01/16/cloud-native/containerd/stargz-lazypull.png">
<meta property="og:image" content="https://so2bin.github.io/2024/01/16/cloud-native/containerd/stargz-format.png">
<meta property="article:published_time" content="2024-01-16T14:53:39.000Z">
<meta property="article:modified_time" content="2024-01-17T12:03:11.307Z">
<meta property="article:modified_time" content="2024-01-17T12:25:55.437Z">
<meta property="article:author" content="so2bin">
<meta property="article:tag" content="Cloud Native">
<meta property="article:tag" content="Containerd">
Expand Down Expand Up @@ -241,7 +241,7 @@ <h1 class="post-title" itemprop="name headline">
<i class="far fa-calendar-check"></i>
</span>
<span class="post-meta-item-text">更新于</span>
<time title="修改时间:2024-01-17 20:03:11" itemprop="dateModified" datetime="2024-01-17T20:03:11+08:00">2024-01-17</time>
<time title="修改时间:2024-01-17 20:25:55" itemprop="dateModified" datetime="2024-01-17T20:25:55+08:00">2024-01-17</time>
</span>


Expand Down Expand Up @@ -284,6 +284,8 @@ <h2 id="概念"><a href="#概念" class="headerlink" title="概念"></a>概念</
<li>由overlay filesystem提供的能力,支持将多个文件系统层叠加在一起,且只显示最顶层的文件和目录,OverlayFS是其实现,docker当前默认存储驱动为overlay2,就是基于该文件系统;</li>
<li>在contaierd中这个联合挂载的roofs视图是由snapshotter准备的snapshots;</li>
</ul>
<span id="more"></span>

<h3 id="filesystem"><a href="#filesystem" class="headerlink" title="filesystem"></a>filesystem</h3><ul>
<li>在容器生态中,有两种类型的文件系统:overlays filesystem, snapshoting filesystem;</li>
<li>AUFS, OverlayFS是overlays filesystem,通过联合挂载将多层目录合并提供给容器,提供file级差异,通常工作于常用文件系统如EXT4, XFS;</li>
Expand Down
Loading

0 comments on commit 56751cc

Please sign in to comment.