Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Docker を安全に始めよう ~Docker Hardened Images (DHI) 入門~
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
suzuki
April 22, 2026
Technology
28
0
Share
Docker を安全に始めよう ~Docker Hardened Images (DHI) 入門~
suzuki
April 22, 2026
More Decks by suzuki
See All by suzuki
Docker の AI 新機能を使ってみよう!
atsushi_suzuki
0
71
GPSの仕組み
atsushi_suzuki
0
440
電圧計測の基礎 -ノイズの原因と対策 -
atsushi_suzuki
0
220
自動車の仕組み
atsushi_suzuki
0
150
【論文紹介】TABULAR TRANSFORMERS FOR MODELING MULTIVARIATE TIME SERIES
atsushi_suzuki
0
210
逆求人アプリにUIルールを適用してみよう
atsushi_suzuki
0
260
presentation_ux_社外用_21060901.pdf
atsushi_suzuki
0
290
真っ白な遷移画面をなんとかしたい
atsushi_suzuki
0
300
Noストレスでアプリ開発したい
atsushi_suzuki
0
280
Other Decks in Technology
See All in Technology
Good Enough Types: Heuristic Type Inference for Ruby
riseshia
1
220
実践ハーネスエンジニアリング:TAKTで実現するAIエージェント制御 / Practical Harness Engineering: AI Agent Control Enabled by TAKT
nrslib
11
4.6k
弁護士ドットコム株式会社 エンジニア職向け 会社紹介資料
bengo4com
1
150
2026年、知っておくべき最新 サーバレスTips10選/serverless-10-tips
slsops
13
5.2k
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
16k
レビューしきれない?それは「全て人力でのレビュー」だからではないでしょうか
amixedcolor
0
330
扱える不確実性を増やしていく - スタートアップEMが考える「任せ方」
kadoppe
0
300
Standards et agents IA : un tour d’horizon de MCP, A2A, ADK et plus encore
glaforge
0
170
Eight Engineering Unit 紹介資料
sansan33
PRO
3
7.3k
自立を加速させる神器 - EMOasis #11
stanby_inc
0
140
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
10
78k
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1.1k
Featured
See All Featured
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.4k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
340
Skip the Path - Find Your Career Trail
mkilby
1
110
Raft: Consensus for Rubyists
vanstee
141
7.4k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.2k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
69
39k
The SEO identity crisis: Don't let AI make you average
varn
0
440
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.3k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.1k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
220
30 Presentation Tips
portentint
PRO
1
270
New Earth Scene 8
popppiees
3
2.1k
Transcript
1 Docker を安全に始めよう ~ Docker Hardened Images (DHI) 入門 ~
鈴木 敦 / Atsushi Suzuki
2 鈴木 敦 Atsushi Suzuki LinkedIn Docker Captain AWS Community
Builder Kubestronaut 2020/7 ~ エンジニア人生開始 ~ 2026/3 フロント → AI・インフラ 2026/4 ~ 新天地! かっこよすぎるロゴ 最近なりました それ以前は営業 逆求人、宅配、SaaS 新しいことをやっていきたい
3 発表でお伝えしたいこと Docker をこれから使い始める 業務で試す際のセキュリティも気になる どのイメージを選べばいいか迷っている 何が「安全なイメージ」かわかる 明日から具体的な手順を試す 対象となる方 今日の目標
4 今日お話しすること 1. Docker が選ばれる理由 2. はじめから「安全」に使う理由 3. Docker Hardened
Images(DHI)とは 4. デモ:公式イメージ vs DHI を比較 5. 今日からどう始めるか
5 Docker が選ばれる理由
6 Docker が選ばれる 3 つの理由 環境の再現性: 「自分の PC では動くのに…」がなくなる チームでの統一:全員が同じ環境で開発・テスト・デプロイ
AI 開発との相性:GPU 環境やモデル実行環境をコンテナで配布
7 「動けばいい」で大丈夫? 便利が故に「動けばいい」で済ませがち 業務ではセキュリティの考慮も必要 「とりあえず動く」イメージには不要物が混入している場合も ⇒ 脆弱性の原因 最初から安全な選択をするのが大事
8 はじめから「安全」に使う理由
9 コンテナイメージは「部品」 コンテナイメージはパッケージやライブラリと同じ「部品」 出所不明の部品はサプライチェーン攻撃の入口になりうる FROM のイメージ選択がセキュリティの出発点
10 1 つのコンテナイメージの中には… アプリコード ランタイム(Node.js、Python など) OS パッケージ・共通ライブラリ(数百個) ベース OS(Debian、Alpine
など)= 土台 ベース OS の選択が全体のセキュリティを決める
11 Docker Hardened Images(DHI)とは Docker社が提供するセキュリティ強化済みのイメージ群 CVE(既知の脆弱性)がほぼゼロになるよう継続的にメンテナンス SBOM(部品一覧)や Provenance(ビルド来歴)など、署名付きの証明書が付属 OSS で無料で使える(Apache
2.0 ライセンス) 1000+ イメージから選べる
12 なぜ最初から DHI を選ぶべきか ベースイメージの変更は意外と手間 — 再テスト・再デプロイが必要 最初の FROM で安全なイメージを選んでおくのが一番楽
DHI にはビルド用と実行用があり ⇒ 本番環境には必要最小限だけ入る
13 DHI の制約 = 安全の秘密 特徴 なぜ安全か 実行環境にシェルがない 侵入されても操作できない パッケージ追加ができない
不正なソフトを入れられない 管理者権限がデフォルトで OFF 権限を奪われるリスクが減る
14 デモ
15 デモの全体像 TypeScriptベースの Web サーバーアプリを用意 公式イメージと DHI で同じアプリをビルド FROM 行を変えるだけで何が変わるかを
4 つの観点で比較 # 比較観点 ① Dockerfile の差分 ② イメージサイズ & 脆弱性の数 ③ 証明書の数 ④ シェルの有無
16 デモ① Dockerfile 比較 公式イメージ版と DHI 版の Dockerfile を並べます。 #
公式イメージ版 FROM node:24-trixie-slim AS builder FROM node:24-trixie-slim # DHI 版 FROM dhi.io/node:24-debian13-dev AS builder FROM dhi.io/node:24-debian13 FROM 以外は完全に同じです。
17 デモ② イメージサイズ & 脆弱性の数 # サイズ比較 docker images --format
"table {{.Repository}}\t{{.Tag}}\t{{.Size}}" \ | grep demo # 脆弱性の比較 docker scout compare demo-dhi --to demo-official 「小さい」だけではない 余計なものが少ない → 脆弱性(セキュリティの穴)も少ない
18 デモ③ 証明書の数 # 公式:SBOM とProvenance のみ docker scout attest
list node:24-trixie-slim # DHI :脆弱性スキャンやマルウェアスキャンも含む docker scout attest list dhi.io/node:24-debian13
19 デモ④ シェルの有無 # 公式イメージ — シェルに入れる docker run --rm
-it demo-official /bin/sh # DHI — 失敗する docker run --rm -it demo-dhi /bin/sh DHI の runtime にはシェルがない → 攻撃面が減る build 用と runtime 用を分ける理由がここで腹落ちする
20 まとめ Docker は便利。だからこそ最初から安全に DHI なら FROM を変えるだけで脆弱性がほぼゼロに 「軽い」だけじゃない —
「中身を確認できる」のが本質 観点 公式イメージ DHI 脆弱性 多い ほぼゼロ 証明書 2種類 15 種類(署名付き) シェル(本番) あり なし 管理者権限 明示が必要 デフォルトで OFF
21 今日からどう始めるか 1. Docker Desktop をインストール 2. Dockerfile の FROM
を DHI に変える FROM dhi.io/node:24-debian13 3. Docker Desktop の Images タブで脆弱性を確認
22 Q&A ご質問があればどうぞ。 質問がある方は LinkedIn から気軽にお声がけください!