Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
SOCI Index Manifest v2が出たので調べてみた / Introduction...
Search
Tetsuya Kikuchi
August 15, 2025
Programming
660
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
SOCI Index Manifest v2が出たので調べてみた / Introduction to SOCI Index Manifest v2
2025-08-15 に社内勉強会で発表した資料になります。
Tetsuya Kikuchi
August 15, 2025
More Decks by Tetsuya Kikuchi
See All by Tetsuya Kikuchi
Vibes Containers 〜AIで変わるコンテナ設計と運用〜
tkikuc
3
550
More Approvers for Greater OSS and Japan Community
tkikuc
1
170
Git Sync を超える!OSS で実現する CDK Pull 型デプロイ / Deploying CDK with PipeCD in Pull-style
tkikuc
5
960
今ならAmazon ECSのサービス間通信をどう選ぶか / Selection of ECS Interservice Communication 2025
tkikuc
21
5.3k
GitOps for Everything with Pluggable PipeCD
tkikuc
0
130
ecspresso, ecschedule, lambroll を PipeCDプラグインとして動かしてみた (プロトタイプ) / Running ecspresso, ecschedule, and lambroll as PipeCD Plugins (prototype)
tkikuc
2
7.8k
プルリクが全てじゃない!実は喜ばれるOSS貢献の方法8選
tkikuc
17
3.2k
ECS Service Connectのこれまでのアップデートと今後のRoadmapを見てみる
tkikuc
3
700
ECSのサービス間通信 4つの方法を比較する 〜Canary,Blue/Greenも添えて〜
tkikuc
16
4.7k
Other Decks in Programming
See All in Programming
AWS Step Functions 大規模並列の壁を越える / jaws-sonic-2026-niigata-step-functions
kasacchiful
PRO
1
500
ゲームコントローラやキーボードのファームウェアをSwiftで書く
kishikawakatsumi
1
250
Omarchy Tokyo やると聞いて UMPC 買ってセットアップしてきた
mtsmfm
0
150
【高い買い物LT会】初任給で話題の国産フィジカルAIを買った話
akagami
PRO
0
160
Vue Fes Japan 2026 タイムテーブル徹底解説
448jp
1
430
XP祭りでしか伝わらないフリップネタ #xpjug
murabayashi
0
150
モデルのリファクタリングが難しいと思ったら、そもそも複雑だったのはビジネス仕様だった ? / is-the-business-domain-the-real-complexity
hatsu38
0
370
モバイル交通系ICへのチャージ実例から考える、クロスプラットフォーム開発におけるiOS実機テスト設計とCI運用
yusuga
1
520
Snowflakeで業務アプリを作ろう。 Snowflakeのアプリ機能解説&実践ガイド
ayumu_yamaguchi
2
290
変化を抱擁するドキュメントの作り方 - ビジネスルール駆動開発がもたらす、コードとの新しい関係
ioki
2
220
TiDB Cloudのカスタムコントローラーによるオートスケール対応
takaidohigasi
0
130
更なる可用性を求めて、5年間運用したKotlinのアプリケーションをGoでリプレイスする話
ken_tunc
0
330
Featured
See All Featured
Ten Tips & Tricks for a 🌱 transition
stuffmc
1
230
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.6k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.2k
Designing Experiences People Love
moore
143
24k
Optimizing for Happiness
mojombo
378
71k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
530
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
580
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Six Lessons from altMBA
skipperchong
29
4.5k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.6k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.4k
Transcript
SOCI Index Manifest v2 が出たので 調べてみた 2025-08-13 Tetsuya Kikuchi 社内LT
会 [ 公開用] 1/20
AWS Community Builder (Containers, 2025 年~) 好きなサービス: ECS 菊池 哲哉
(@t-kikuc) 2/20
SOCI とは何か入門( おさらい) SOCI Index Manifest v2 で何が変わったのか 今日話すこと 3/20
1. SOCI とは 4/20
https://www.usenix.org/conference/fast16/technical-sessions/presentation/harter コンテナ起動が高速化すると嬉しいことの例: スケールアウト高速化 → SLI やUX の改善 Job 系やビルドのトータル処理時間短縮 コスト削減(例:
Fargate ではイメージpull 開始時刻から課金される) 特にML モデル等の巨大イメージで起動待ちが顕著に改善 コンテナ起動において76 %の時間がイメージPull に費やされているが、 6.4% ほどのデータしか使われていない (2016 年の研究) 背景: コンテナの起動を速くしたい 5/20
イメージの軽量化 軽量なベースイメージの利用 レイヤー数を減らす マルチステージビルド等で不要なファイルを削除 キャッシュ ※ Fargate ではキャッシュが効かない イメージのLazy Loading
Pull を速くする手法の例 6/20
必要最小限のファイルだけ取得したらコンテナ起動 → 他のファイルは、アプリケーション実行中に必要になった際に取得 実現するツールの代表例 stargz-snapshotter (containerd のサブプロジェクト) SOCI Snapshotter イメージのLazy
Loading 7/20
https://github.com/awslabs/soci-snapshotter Lazy Loading の一実装 SOCI: Seekable OCI の略。 読みは "so-CHEE"
AWS がOSS として公開している Fargate で標準サポートされている。K8s やEKS でも利用は可能 containerd snapshotter のプラグイン SOCI snapshotter 8/20
「どうやって任意のファイルをpull してるのか?」 9/20
SOCI の仕組み(v1) 左半分は通常のコンテナイメージ SOCI Index Manifest: レイヤーごとのzTOC を束ねたもの + 元となるイメージの識別子
zTOC: 「レイヤーの各ファイルがTAR アーカ イブ内でどのチャンクにあるか」のテーブル ※ SOCI Index := SOCI Index Manifest + zTOC 10/20
https://aws.amazon.com/jp/blogs/news/under-the-hood-lazy-loading-container-images-with-seekable-oci-and-aws-fargate/ コンテナ起動前に、SOCI Index Manifest とzTOC をDL する 未DL のファイルにアクセスすると、SOCI Index
を元にDL が行われる 実行時の仕組み 11/20
https://awslabs.github.io/cfn-ecr-aws-soci-index-builder/ A. SOCI CLI をCI/CD 等に組み込む B. SOCI Index Builder
CloudFormation でデプロイできるソリューション Push 検知→ フィルター→Index 作成 SOCI の使い方 12/20
強み: 既存のイメージ自体を変更する必要がない stargz-snapshotter では専用の形式(stargz,eStargz) にイメージを変換しないといけない SOCI はイメージが250MB 以上の場合に効果的 イメージが小さい場合は、Lazy Loading
によるオーバーヘッドの方が大きくなる タスク内に複数のコンテナが存在する場合、特定のコンテナイメージのみを Lazy Loading 可能 全てのイメージにSOCI Index を作成する必要がない SOCI の特徴 13/20
2. SOCI Index Manifest v2 では何が変わったか? 14/20
https://aws.amazon.com/jp/about-aws/whats-new/2025/07/aws-fargate-soci-index-manifest-v2-deployment-consistency/ 2025 年6 月末にv0.10.0 として登場 7 月頭にECS on Fargate でサポートされた
v2 登場 15/20
デプロイの途中でSOCI Index を削除/ 変更すると、 「一部タスクはLazy Loading されるが、他のタスクは遅い」など、起動時間の予測しにくさがありえた タイムアウト値の設定などに影響 一因: SOCI
Index Manifest → イメージ の一方向参照だったから v1 の課題: 一貫性の欠如 16/20
https://aws.amazon.com/jp/blogs/news/improving-amazon-ecs-deployment-consistency-with-soci-index-manifest-v2/ v2 でどうなったか https://github.com/opencontainers/image-spec/blob/main/image-index.md Container Image Index を活用 複数のimage manifest
を束ねる これ自体はOCI 標準のもの イメージとSOCI Index を双方向に紐づける → Image Index を削除/ 更新しない限り、SOCI Index は変わらない 17/20
https://github.com/awslabs/soci-snapshotter/blob/main/docs/soci-index-manifest-v2.md ECS on Fargate で初めてSOCI を使うユーザは、今後はv2 のみ利用可能 v1 からv2 への移行は
soci convert で可能 v2 の詳細: 考慮事項 18/20
まとめ 19/20
SOCI はコンテナイメージの遅延読み込みを実現し、コンテナ起動を高速化する ための技術 SOCI の強みは、イメージ自体に変更が不要な点 Index Manifest v2 によってデプロイの一貫性が向上した まとめ
20/20