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
430
dockerの豆知識を沢山話す
まるすけ
June 19, 2024
Tweet
Share
More Decks by まるすけ
See All by まるすけ
New Relicを使って PHPの監視、始めてみた
mal0961
1
120
Docker CLIのソースコードリーディングでDockerをチョット理解した話
mal0961
2
210
Other Decks in Programming
See All in Programming
マルチアカウント環境での、そこまでがんばらない RI/SP 運用設計
wa6sn
0
600
MCP世界への招待: AIエンジニアが創る次世代エージェント連携の世界
gunta
2
580
GDG Super.init(version=6) - From Where to Wear : 모바일 개발자가 워치에서 발견한 인사이트
haeti2
0
560
snacks.nvim内のセットアップ不要なプラグインを紹介 / introduce_snacks_nvim
uhooi
0
350
本当だってば!俺もTRICK 2022に入賞してたんだってば!
jinroq
0
250
Kubernetesで実現できるPlatform Engineering の現在地
nwiizo
2
1.7k
安全に倒し切るリリースをするために:15年来レガシーシステムのフルリプレイス挑戦記
sakuraikotone
5
2.3k
php-fpm がリクエスト処理する仕組みを追う / Tracing-How-php-fpm-Handles-Requests
shin1x1
5
830
OpenTelemetryを活用したObservability入門 / Introduction to Observability with OpenTelemetry
seike460
PRO
0
340
プログラミング教育のコスパの話
superkinoko
0
120
ステートソーシング型イベント駆動の視点で捉えるCQRS+ES
shinnosuke0522
1
320
リアクティブシステムの変遷から理解するalien-signals / Learning alien-signals from the evolution of reactive systems
yamanoku
2
1k
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
36
1.7k
Documentation Writing (for coders)
carmenintech
69
4.7k
Rails Girls Zürich Keynote
gr2m
94
13k
Optimizing for Happiness
mojombo
377
70k
Scaling GitHub
holman
459
140k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
The Pragmatic Product Professional
lauravandoore
33
6.5k
Code Review Best Practice
trishagee
67
18k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
12k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
Making the Leap to Tech Lead
cromwellryan
133
9.2k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.2k
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