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
kenken
July 31, 2020
Technology
0
71
Dockerで開発環境構築ひとりでできるもん!
・Dockerとは?の基礎部分を学習した
・DockerでHellow worldしてみた
・Railsの開発環境を構築してみた
kenken
July 31, 2020
Tweet
Share
More Decks by kenken
See All by kenken
ぼくたちリモワ3ねんせい 〜業務を円滑に進めるために大事にしてるメンタルモデル〜
houraisyuto
0
210
M5Stackで遊んでみた
houraisyuto
0
970
ヒラマサの活動について
houraisyuto
0
340
Other Decks in Technology
See All in Technology
Red Hat OpenStack Services on OpenShift
tamemiya
0
140
Ruby版 JSXのRuxが気になる
sansantech
PRO
0
170
猫でもわかるKiro CLI(セキュリティ編)
kentapapa
0
130
AIが実装する時代、人間は仕様と検証を設計する
gotalab555
1
640
プロダクト成長を支える開発基盤とスケールに伴う課題
yuu26
4
1.4k
AIエージェントを開発しよう!-AgentCore活用の勘所-
yukiogawa
0
200
制約が導く迷わない設計 〜 信頼性と運用性を両立するマイナンバー管理システムの実践 〜
bwkw
3
1.1k
22nd ACRi Webinar - 1Finity Tamura-san's slide
nao_sumikawa
0
110
私たち準委任PdEは2つのプロダクトに挑戦する ~ソフトウェア、開発支援という”二重”のプロダクトエンジニアリングの実践~ / 20260212 Naoki Takahashi
shift_evolve
PRO
2
230
【Ubie】AIを活用した広告アセット「爆速」生成事例 | AI_Ops_Community_Vol.2
yoshiki_0316
1
120
SREチームをどう作り、どう育てるか ― Findy横断SREのマネジメント
rvirus0817
0
360
予期せぬコストの急増を障害のように扱う――「コスト版ポストモーテム」の導入とその後の改善
muziyoshiz
1
2.1k
Featured
See All Featured
How GitHub (no longer) Works
holman
316
140k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.6k
Paper Plane
katiecoart
PRO
0
46k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
72
Mind Mapping
helmedeiros
PRO
0
90
The SEO identity crisis: Don't let AI make you average
varn
0
330
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
110
Side Projects
sachag
455
43k
Into the Great Unknown - MozCon
thekraken
40
2.3k
Become a Pro
speakerdeck
PRO
31
5.8k
KATA
mclloyd
PRO
34
15k
Transcript
DockerͰ։ൃڥߏஙͻͱΓͰͰ͖ΔΜʂ ~ηϒϯͷόφφͷΞΠεʹϋϚͬͯ·͢~ GMOϖύϘ גࣜձࣾ ͚Μ͚Μ
ࣗݾհ
ሟိलేʢ΄͏Β͍͠Ύ͏ͱʣ ͚Μ͚Μ @kenken_monasyu ɾ1993/10/27 ੜ·Ε(26ࡀ) ɾGMOϖύϘ גࣜձࣾɹ ɾिͨ·ʹՈ ࠷ۙͷ·Γ͝ͱ ɾϓϩͱϋΠΩϡʔ
ɹฐࣾͷ։ൃڥʹDockerΛ༻͞Ε͍ͯΔ • ͋·ΓཧղͤͣʹίϚϯυΆͪΆͪͯͨ͠ • ։ൃڥͰτϥϒͬͨͱ͖ʹࢥߟఀࢭͯͨ͠
ɹͦΜͳਓੜ͍ͩʙʂʂʂ
ɹDockerͷֶशత • ͳʹ͛ͳ࣮͘ߦ͍ͯͨ͠ίϚϯυͷཧղΛਂΊΔ • DockerΛ༻ͨ͠։ൃڥʹ͍ͭͯཧղΛਂΊΔ
ɹͬͨ͜ͱ • Dockerͱʁͷجૅ෦Λֶशͨ͠ • DockerͰHellow worldͯ͠Έͨ • Railsͷ։ൃڥΛߏஙͯ͠Έͨ
Docker
Dockerͱʁ
ɹDockerͷಛ ɾίϯςφٕज़Λ͔͍ͭͬͯΔ ɾܰྔͰߴʹಈ࡞ ɾڥͷ͕ࠩੜ·Εͳ͍ͨΊɺ։ൃ ڥͱͯ͠ར༻͞Ε͍ͯΔ ɾGoݴޠͰॻ͔Ε͍ͯΔ
ɹΑ͘Ͱͯ͘Δϫʔυ ɾίϯςφ ɾΠϝʔδ
ɹίϯςφ ࢀরɿʮϓϩάϥϚͷͨΊͷDockerڭՊॻ ୈ2൛ Πϯϑϥͷجૅࣝ&ίʔυʹΑΔڥߏஙͷࣗಈԽʯΑΓ
ɹΠϝʔδ ࢀরɿʮϓϩάϥϚͷͨΊͷDockerڭՊॻ ୈ2൛ Πϯϑϥͷجૅࣝ&ίʔυʹΑΔڥߏஙͷࣗಈԽʯΑΓ
ɹ͜͏͍͏ײ͡ ࢀরɿʮϓϩάϥϚͷͨΊͷDockerڭՊॻ ୈ2൛ Πϯϑϥͷجૅࣝ&ίʔυʹΑΔڥߏஙͷࣗಈԽʯΑΓ
ɹDockerͷػೳ ɾDockerΠϝʔδΛ࡞ΔػೳʢBuildʣ ɾDockerΠϝʔδΛڞ༗͢Δػೳ(Ship) ɾDockerίϯςφΛಈ͔͢ػೳ(Run)
ɹDockerΠϝʔδΛ࡞ΔػೳʢBuildʣ ࢀরɿʮϓϩάϥϚͷͨΊͷDockerڭՊॻ ୈ2൛ Πϯϑϥͷجૅࣝ&ίʔυʹΑΔڥߏஙͷࣗಈԽʯΑΓ
ɹDockerΠϝʔδΛڞ༗͢Δػೳ(Ship) https://hub.docker.com/ ɹhttps://hub.docker.com/
ɹDockerίϯςφΛಈ͔͢ػೳ(Run) ɾίϯςφىಈ ɾίϯςφఀࢭ ɾίϯςφഁغ
Helloworldͯ͠ΈΔΑ
DockerΠϯετʔϧ IUUQTEPDTEPDLFSDPNHFUEPDLFS
hello-worldίϯςφͷ࣮ߦͱಈ࡞
ɹDockerͷίϯϙʔωϯτ ࢀরɿʮϓϩάϥϚͷͨΊͷDockerڭՊॻ ୈ2൛ Πϯϑϥͷجૅࣝ&ίʔυʹΑΔڥߏஙͷࣗಈԽʯΑΓ
Rails ͷ։ൃڥΛߏஙͯ͠ΈΔΑ
ɾDockerComposeɺDockerforMac·ͨ DockerforWindowsʹ͋Β͔͡ΊΠϯετʔϧ͞Ε͍ͯ·͢ ɾdockercomposeίϚϯυͰɺdockercompose.ymlΛͱ ʹɺෳίϯςφͷੜʗىಈͰ͖Δ ɹDockerComposeʢෳίϯςφҰݩཧʣ
Railsɿ5.2.4 Postgresqlɿ0.20.0 ɹRailsͷ։ൃڥ
ɾDockerfileΛ࡞͢Δ ɾGemfileɺGemfile.lockΛ࡞͢Δ ɾdocker-compose.ymlΛ࡞͢Δ ɾdocker-composeίϚϯυΛ࣮ߦ͢Δ ɹRailsͷ։ൃڥΛߏங͢ΔྲྀΕ
ɹDockerfileΛ࡞͢Δ
ɹGemfileɺGemfile.lockΛ࡞͢Δ
ɹdocker-compose.ymlΛ࡞͢Δ
ɹrails newΛ࣮ߦ͢Δ
ɹpgͷόʔδϣϯΛௐ͢Δ
ɹdocker-compose upΛ࣮ߦ͢Δ
ɹDBΛ࡞͢Δ
ɹRails্ཱ͕͕ͪͬͨʂʂ̍
ɾΠϝʔδͷΰϛ͕ͪΌΜͱফͤͳͯ͘DB͕࡞Ͱ͖ͳ͘ ͳͬͨ →docker-compose down Ͱਖ਼͘͠আ͖ͩͬͨ͢ ʢdocker-compose stop͚ͩͯ͠Ε͍͍ͱࢥ͍ͬͯͨʣ ɾRails6ͩͱwebpacker͕ࡌ͞ΕɺyarnͷΠϯετʔ ϧ͕ඞཁʹͳͬͨͷ͕ͩɺDockerfileʹهࡌͯ͠͏·͘ ಈ͍ͯ͘Εͳͯ͘ɺRails6ͷڥͰߏஙͰ͖ͳ͔ͬͨɻ
ࠓճRails5ܥͰߏங͠·ͨ͠ɻɻɻ ɹ٧·ͬͨͱ͜Ζ
·ͱΊ
• ίϚϯυͷཧղ͕ਂ·ͬͨ • ؆୯ͳ։ൃڥͰ͋ΕߏஙͰ͖ΔΑ͏ͳͬͨ ˠͻͱΓͰͰ͖ΔΜʂ
͝੩ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂʂ