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
66
Dockerで開発環境構築ひとりでできるもん!
・Dockerとは?の基礎部分を学習した
・DockerでHellow worldしてみた
・Railsの開発環境を構築してみた
kenken
July 31, 2020
Tweet
Share
More Decks by kenken
See All by kenken
ぼくたちリモワ3ねんせい 〜業務を円滑に進めるために大事にしてるメンタルモデル〜
houraisyuto
0
200
M5Stackで遊んでみた
houraisyuto
0
930
ヒラマサの活動について
houraisyuto
0
320
Other Decks in Technology
See All in Technology
VGGT: Visual Geometry Grounded Transformer
peisuke
1
570
成長し続けるアプリのためのテストと設計の関係、そして意思決定の記録。
sansantech
PRO
0
140
Enhancing SaaS Product Reliability and Release Velocity through Optimized Testing Approach
ropqa
1
250
Amplify Gen2から知るAWS CDK Toolkit Libraryの使い方/How to use the AWS CDK Toolkit Library as known from Amplify Gen2
fossamagna
0
180
オーティファイ会社紹介資料 / Autify Company Deck
autifyhq
10
130k
United™️ Airlines®️ Customer®️ USA Contact Numbers: Complete 2025 Support Guide
flyunitedguide
0
750
AWS CDK 入門ガイド これだけは知っておきたいヒント集
anank
4
530
united airlines ™®️ USA Contact Numbers: Complete 2025 Support Guide
flyunitedhelp
1
470
オフィスビルを監視しよう:フィジカル×デジタルにまたがるSLI/SLO設計と運用の難しさ / Monitoring Office Buildings: The Challenge of Physical-Digital SLI/SLO Design & Operation
bitkey
1
310
cdk initで生成されるあのファイル達は何なのか/cdk-init-generated-files
tomoki10
1
460
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
54
22k
AI エージェントと考え直すデータ基盤
na0
17
7k
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.5k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
510
BBQ
matthewcrist
89
9.7k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
Site-Speed That Sticks
csswizardry
10
690
Speed Design
sergeychernyshev
32
1k
Unsuck your backbone
ammeep
671
58k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
We Have a Design System, Now What?
morganepeng
53
7.7k
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ܥͰߏங͠·ͨ͠ɻɻɻ ɹ٧·ͬͨͱ͜Ζ
·ͱΊ
• ίϚϯυͷཧղ͕ਂ·ͬͨ • ؆୯ͳ։ൃڥͰ͋ΕߏஙͰ͖ΔΑ͏ͳͬͨ ˠͻͱΓͰͰ͖ΔΜʂ
͝੩ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂʂ