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の豆知識を沢山話す
Search
まるすけ
June 19, 2024
Programming
3
500
dockerの豆知識を沢山話す
まるすけ
June 19, 2024
Tweet
Share
More Decks by まるすけ
See All by まるすけ
New Relicを使って PHPの監視、始めてみた
mal0961
1
150
Docker CLIのソースコードリーディングでDockerをチョット理解した話
mal0961
2
230
Other Decks in Programming
See All in Programming
プロダクトという一杯を作る - プロダクトチームが味の責任を持つまでの煮込み奮闘記
hiliteeternal
0
300
What's new in AppKit on macOS 26
1024jp
0
180
QA x AIエコシステム段階構築作戦
osu
0
220
CDK引数設計道場100本ノック
badmintoncryer
2
590
0から始めるモジュラーモノリス-クリーンなモノリスを目指して
sushi0120
0
210
顧客の画像データをテラバイト単位で配信する 画像サーバを WebP にした際に起こった課題と その対応策 ~継続的な取り組みを添えて~
takutakahashi
4
1.4k
Vibe coding コードレビュー
kinopeee
0
330
抽象化という思考のツール - 理解と活用 - / Abstraction-as-a-Tool-for-Thinking
shin1x1
1
890
React 使いじゃなくても知っておきたい教養としての React
oukayuka
16
4.5k
No Install CMS戦略 〜 5年先を見据えたフロントエンド開発を考える / no_install_cms
rdlabo
0
380
オンコール⼊⾨〜ページャーが鳴る前に、あなたが備えられること〜 / Before The Pager Rings
yktakaha4
2
1.2k
React は次の10年を生き残れるか:3つのトレンドから考える
oukayuka
40
16k
Featured
See All Featured
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
760
Measuring & Analyzing Core Web Vitals
bluesmoon
7
530
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Making the Leap to Tech Lead
cromwellryan
134
9.4k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1k
Rails Girls Zürich Keynote
gr2m
95
14k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Navigating Team Friction
lara
188
15k
The Pragmatic Product Professional
lauravandoore
35
6.8k
Transcript
まるすけ (@malsuke096) dockerの豆知識を沢山話す 1 2024/6/19 #kwad #ashibinaa
自己紹介 - 名前 : まるすけ - X : @malsuke096 -
like : PHP / docker / golang 2
おことわり 3 ソースコードリーディングで学んだことが少なかったので急遽変更 「その豆知識、全部知っとったわ」ってなったらごめんね🥲
目次 1. docker, docker composeとは 2. docker編 豆知識1~3 3. docker
compose編 豆知識4~6 4
目次 1. docker composeとは 2. docker編 豆知識1~3 3. docker compose編
豆知識4~6 5
豆知識1: docker関連のキャラクター 6
豆知識1: docker関連のキャラクター 7 Docker(クジラ), Tux(黒いペンギン), Gopher(青いリス?), Compose(クラーケン) あたりはわかるけど他は?
豆知識1: docker関連のキャラクター 8 聞いてみた。
豆知識1: docker関連のキャラクター 9 カメ : Docker社で飼ってる亀 左の魚の群れ : docker swarm
貝 : Docker Registry
豆知識2: Docker desktopはVM 10
豆知識2: Docker desktopはVM 11 コンテナ技術はLinuxの仕組み(CgroupやNamespace)などを利用している。 これらはWindowsやMacにない Windows WSL2またはHyper-V MacOS HyperkitまたはApple
Hypervisor Framework(Apple Siliconのみ) https://towardsdatascience.com/your-first-step-to -use-docker-on-a-non-linux-os-c01d60057401
豆知識3: DockerとClientはREST API通信 12
豆知識3: DockerとClientはREST API通信 13 - DockerとクライアントはREST APIで対話している - 実はcurl経由でもDockerの操作はできる
目次 1. docker composeとは 2. docker編 豆知識1~3 3. docker compose編
豆知識4~6 14
豆知識4:docker-composeとdocker compose 15
豆知識4:docker-composeとdocker compose 16 docker-compose は docker compose V1 docker compose
は docker compose V2 これらの差分は何?
豆知識4:docker-composeとdocker compose 17 docker-composeはそれまで単体のコマンドであった v19.03.0以降でDocker CLI Pluginというシステムが追加された https://zenn.dev/skanehira/articles/2021-06-03-new-docker-compose#docker-cli-plugin%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6
豆知識4:docker-composeとdocker compose 18 つまり、docker composeコマンドはdockerコマンドの拡張機能として存在し ている。 docker infoを確認するとPluginsという項目にcomposeが存在している
豆知識5: docker composeの謎 19
豆知識5: docker composeの謎 20 このようなcompose.yamlを定義してdocker compose up -dをすると
豆知識5: docker composeの謎 21 phpコンテナへはphpという名前で、mysqlコンテナへはmysqlという名前で 所謂、DNS解決ができるようになる。 なぜ!?
豆知識5: docker composeの謎 22 答え : docker composeがコンテナを共通のネットワークに所属させ、それら にエイリアスをつけているから。 https://www.google.com/url?sa=i&url=https%3A%2F%2Fknowledge.sakura.ad.jp%2F26522%2F&psig=AOvVaw04S5VXAiwSv4XKuPhFlKn4&u
st=1718860935114000&source=images&cd=vfe&opi=89978449&ved=0CBEQjRxqFwoTCICSjZn25oYDFQAAAAAdAAAAABAO
豆知識5: docker composeの謎 23 docker inspectコマンドで確認するとAliasesという項目に名前が入ってい る。おそらくこれを見て名前解決できるようになっているのだろう。
豆知識5: docker composeの謎 24 お互いを名前で認識できる!
豆知識5: docker composeの謎 25 追記 : docker v25以降ではDNSNamesというフィールドが追加された
豆知識5: docker composeの謎 26 追記 : docker v25以降ではDNSNamesというフィールドが追加された
豆知識6: docker compose up の謎 27
豆知識6: docker compose up の謎 28 docker compose up には
--no-startというオプションがある
豆知識6: docker compose up の謎 29 docker compose up には
--no-startというオプションがある なるほど、up = create + start だから startを抜いたバージョンか...
豆知識6: docker compose up の謎 30 いや、それただの docker compose create
やないかーい
おしまい 31