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
39
Dockerで開発環境構築ひとりでできるもん!
・Dockerとは?の基礎部分を学習した
・DockerでHellow worldしてみた
・Railsの開発環境を構築してみた
kenken
July 31, 2020
Tweet
Share
More Decks by kenken
See All by kenken
ぼくたちリモワ3ねんせい 〜業務を円滑に進めるために大事にしてるメンタルモデル〜
houraisyuto
0
130
M5Stackで遊んでみた
houraisyuto
0
780
ヒラマサの活動について
houraisyuto
0
230
Other Decks in Technology
See All in Technology
Databricks:『生成AI World Cup』のご案内
databricksjapan
2
150
Microsoft Cloudで開発ライフサイクルを保護する
kkamegawa
0
140
株式会社EventHub・エンジニア採用資料
eventhub
0
1.9k
インシデントレスポンスのライフサイクルを廻すポイントってなに / Pinpoints of Incidentresponse Lifecycle for Operation
sakaitakeshi
1
300
人間の尊厳、幸福、アクセシビリティ / 第116回「WEB TOUCH MEETING」アクセシビリティSP
nulabinc
PRO
2
180
20240416_devopsdaystokyo
kzkmaeda
1
190
現代CSSフレームワークの内部実装とその仕組み
poteboy
2
650
複雑な構成要素を持つUIとの向き合い方 〜新・支出グラフでの実例〜 / B43 TECH TALK
nakamuuu
0
100
SIEMを用いて、セキュリティログ分析の可視化と分析を実現し、PDCAサイクルを回してみた
coconala_engineer
0
220
疲弊しない!AWSセキュリティ統制の考え方 #devio_osakaday1
masahirokawahara
6
5.9k
プロトタイピングによる不確実性の低減 / Reducing Uncertainty through Prototyping
ohbarye
3
240
カオナビの利用実績をアウトカムへつなげる旅 / example-of-data-management-startup-in-kaonavi
kaonavi
0
120
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
503
110k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
243
20k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
119
38k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
60
14k
Six Lessons from altMBA
skipperchong
20
3k
The Illustrated Children's Guide to Kubernetes
chrisshort
29
46k
Ruby is Unlike a Banana
tanoku
96
10k
BBQ
matthewcrist
80
8.7k
Writing Fast Ruby
sferik
620
60k
Bootstrapping a Software Product
garrettdimon
PRO
301
110k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
154
14k
Building an army of robots
kneath
300
41k
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ܥͰߏங͠·ͨ͠ɻɻɻ ɹ٧·ͬͨͱ͜Ζ
·ͱΊ
• ίϚϯυͷཧղ͕ਂ·ͬͨ • ؆୯ͳ։ൃڥͰ͋ΕߏஙͰ͖ΔΑ͏ͳͬͨ ˠͻͱΓͰͰ͖ΔΜʂ
͝੩ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂʂ