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 for Windows/macOS
Search
ハトネコエ
December 08, 2023
Technology
66
0
Share
Docker for Windows/macOS
社内勉強会(2023/12/8)にて発表。もう少し調べてからアップロードしたかったけれど、
発表日からそろそろ1年経つので、ここまででも役に立つ資料だからアップロード!
ハトネコエ
December 08, 2023
More Decks by ハトネコエ
See All by ハトネコエ
日経が読める?! 株式市場の基礎 / Stock Market Basics
nekonenene
0
65
プルリクエストレビューを終わらせるためのチーム体制 / The Team for Completing Pull Request Reviews
nekonenene
5
3.2k
今年こそ知るべきセキュリティー入門 / Security Basics 2025
nekonenene
0
81
Godot 4.3 と学ぶインタラクティブミュージック / Interactive Music Basics with Godot 4.3
nekonenene
0
220
Developer Consoleを使い倒そう / Use Web Browser DevTools
nekonenene
0
84
まだまだマイナー?! 未踏事業について教えます / Introduction of Mitou Project
nekonenene
1
170
技術的負債を防ぐには / What is the Technical Debt
nekonenene
0
380
画像処理の基礎の基礎 / Ultra Basic of Image Processing
nekonenene
0
76
伝わる文章を書こう講座 / Write the Kind Japanese Message
nekonenene
2
200
Other Decks in Technology
See All in Technology
GitHub Copilot Dev Days
tomokusaba
0
130
ブラウザの投機的読み込みと投機ルールAPIを理解し、Webサービスのパフォーマンスを最適化する
shuta13
2
250
ボトムアップの改善の火を灯し続けろ!〜支援現場で学んだ、消えないための3つの打ち手〜 / 20260509 Kazuki Mori
shift_evolve
PRO
2
350
QAエンジニアはどうやって プロダクト議論の場に入れるのか?
moritamasami
1
310
多角的な視点から見たAGI
terisuke
0
110
FessのAI検索モード:検索システムとLLMへの取り組み
marevol
0
170
The 7 pitfalls of AI
ufried
0
170
小説執筆のハーネスエンジニアリング
yoshitetsu
0
900
フロントエンドの相手が変わった - AIが加わったWebの新しいインターフェース設計
azukiazusa1
29
7.6k
Claude Code を安全に使おう勉強会 / Claude Code Security Basics
masahirokawahara
12
39k
20260428_Product Management Summit_tadokoroyoshiro
tadokoro_yoshiro
15
18k
AI バイブコーティングでキーボード不要?!
samakada
0
670
Featured
See All Featured
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
160
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.9k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
330
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.4k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Accessibility Awareness
sabderemane
1
110
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
Embracing the Ebb and Flow
colly
88
5k
Mobile First: as difficult as doing things right
swwweet
225
10k
Code Reviewing Like a Champion
maltzj
528
40k
sira's awesome portfolio website redesign presentation
elsirapls
0
230
Transcript
%PDLFSGPS8JO.BD ݄ ԣߐ྄༎ ʙͳΜͰ-JOVY͕ಈ͘ͷ͔ͷུ֓ʙ
%PDLFS͕ੜ·ΕΔҎલ • 「VirtualBox」という アプリケーションが よく使われていた • その中で OS
を起動させ 動かす仕組み (ը૾ݩ: https://knowledge.sakura.ad.jp/13265/ )
%PDLFS͕ੜ·ΕΔҎલ • 手作業で OS をダウンロードして 必要に応じて起動&セットアップするのは 面倒なので、「Vagrant」が使われていた •
起動は便利になったが、動作スピードの面 では課題があった
%PDLFS͕ੜ·Εͨ • 2013年に発表・公開 • 2014年には Docker は v1.0 を迎え、
Docker Hub がオープン。 Google は Kubernetes を公開 • 日本でも2014年から勉強会が増え出す
%PDLFSͷ֓ཁ • Linux の Namespaces(名前空間) や cgroups などの機能を活用し、 1つのOS内であたかも複数のマシンが
動いているかのようにできる • CPUやメモリに直接アクセスできるので高速
(ը૾ݩ: https://www.undercoverlog.com/entry/2018/10/01/ Docker%E3%81%AE%E5%8B%95%E4%BD%9C%E5%8E%9F%E7%90%86%EF%BC%88%E5%90%8D%E5%89%8D%E7%A9%BA%E9%96%93/cgroups%EF%BC%89 )
ͪΖΜ.BDͰ ΘΕΔΑ͏ʹ
ɾɾɾ͋Εʁ
.BD-JOVYͰͳ͍ • DockerはLinuxの 機能を活用して 作られている • MacはLinuxでも、
その系列でもない (ը૾ݩ: https://nitkpc.com/unix/unix.php )
Ͳ͏ͳ͍͔ͬͯͨ
%PDLFSJO.BDʢॳظʣ • 初期の Docker を Mac で動かす方法は VirtualBox だった
• VirtualBox で Linux を動かし、 その Linux 内で Docker を起動する • 当然遅かった
%PDLFSJO.BDʢʣ • 2016/07/28、Docker for Mac/Windows の Stable 版がリリース • OS
X Yosemite(2014〜)に搭載された Hypervisor.framework を使用するように。 Intel VT を制御して、複数OSを効率よく 動かせるようになった
*OUFM75 • VT は Virtualization Technology(仮想 化技術)の略。CPUに組み込まれている • 1台のマシンで複数のOSを瞬時に切り替 えながら動かせるようハードウェア的なサ
ポートをしている
8JOEPXTͷ߹ • Hypervisor.framework と同様、 Intel VT を制御することで、1つのOSで 複数のOSをOSレベル(カーネルレベル)
で扱えるようにした「Hyper-V」 を使用 • Windows Server 2008 から搭載
8JOEPXTͷ߹ʢ࠷ۙʣ • Hyper-V は Windows 11 Pro で使えるが Windows
11 Home では使えない • Home ではどうするかというと Windows Subsystem for Linux で 動いている
84-)ZQFS7ʁ • WSL2(Windows Subsystem for Linux)は Hyper-V アーキテクチャを使用して
作られているらしい • もう少し調べないと自信ない