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
0
13
Docker for Windows/macOS
社内勉強会(2023/12/8)にて発表。もう少し調べてからアップロードしたかったけれど、
発表日からそろそろ1年経つので、ここまででも役に立つ資料だからアップロード!
ハトネコエ
December 08, 2023
Tweet
Share
More Decks by ハトネコエ
See All by ハトネコエ
今年こそ知るべきセキュリティー入門 / Security Basics 2025
nekonenene
0
22
Godot 4.3 と学ぶインタラクティブミュージック / Interactive Music Basics with Godot 4.3
nekonenene
0
77
Developer Consoleを使い倒そう / Use Web Browser DevTools
nekonenene
0
14
まだまだマイナー?! 未踏事業について教えます / Introduction of Mitou Project
nekonenene
1
110
技術的負債を防ぐには / What is the Technical Debt
nekonenene
0
300
画像処理の基礎の基礎 / Ultra Basic of Image Processing
nekonenene
0
28
伝わる文章を書こう講座 / Write the Kind Japanese Message
nekonenene
2
140
Unity で Android 自動ビルドしたかった話 / I tried Android build of Unity using Docker, but...
nekonenene
0
2.1k
これでわかるB-treeアルゴリズム / B-tree algorithm
nekonenene
12
10k
Other Decks in Technology
See All in Technology
ESXi で仮想化した ARM 環境で LLM を動作させてみるぞ
unnowataru
0
150
設計を積み重ねてシステムを刷新する
sansantech
PRO
0
140
LINE NEWSにおけるバックエンド開発
lycorptech_jp
PRO
0
150
CDKのコードを書く環境を作りました with Amazon Q
nobuhitomorioka
1
150
内製化を加速させるlaC活用術
nrinetcom
PRO
2
120
生成AI×財務経理:PoCで挑むSlack AI Bot開発と現場巻き込みのリアル
pohdccoe
1
500
ソフトウェアエンジニアと仕事するときに知っておいたほうが良いこと / Key points for working with software engineers
pinkumohikan
1
140
大規模アジャイルフレームワークから学ぶエンジニアマネジメントの本質
staka121
PRO
3
430
ExaDB-XSで利用されているExadata Exascaleについて
oracle4engineer
PRO
3
170
OSS構成管理ツールCMDBuildを使ったAWSリソース管理の自動化
satorufunai
0
490
Oracle Database Technology Night #87-1 : Exadata Database Service on Exascale Infrastructure(ExaDB-XS)サービス詳細
oracle4engineer
PRO
1
110
スキルだけでは満たせない、 “組織全体に”なじむオンボーディング/Onboarding that fits “throughout the organization” and cannot be satisfied by skills alone
bitkey
0
150
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
1k
The World Runs on Bad Software
bkeepers
PRO
67
11k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
46
2.3k
Git: the NoSQL Database
bkeepers
PRO
427
65k
Thoughts on Productivity
jonyablonski
69
4.5k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
430
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Building Applications with DynamoDB
mza
93
6.2k
For a Future-Friendly Web
brad_frost
176
9.6k
Producing Creativity
orderedlist
PRO
344
40k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
250
Typedesign – Prime Four
hannesfritz
40
2.5k
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 アーキテクチャを使用して
作られているらしい • もう少し調べないと自信ない