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
ganyariya
July 17, 2020
Technology
0
1.6k
ありがとう競技プログラミングこんにちはDocker
ganyariya
July 17, 2020
Tweet
Share
More Decks by ganyariya
See All by ganyariya
FastAPI+VercelでZennのバッジをお手軽に作る
ganariya
0
880
The Hundred Machine Learning 7.4-7.7
ganariya
0
60
輪講 The hundred ML3.3-3.5
ganariya
0
95
Other Decks in Technology
See All in Technology
united airlines ™®️ USA Contact Numbers: Complete 2025 Support Guide
flyunitedhelp
1
310
2025 AWS Jr. Championが振り返るAWS Summit
kazukiadachi
0
110
American airlines ®️ USA Contact Numbers: Complete 2025 Support Guide
airhelpsupport
0
380
ビズリーチにおけるリアーキテクティング実践事例 / JJUG CCC 2025 Spring
visional_engineering_and_design
1
120
2025-07-06 QGIS初級ハンズオン「はじめてのQGIS」
kou_kita
0
170
成長し続けるアプリのためのテストと設計の関係、そして意思決定の記録。
sansantech
PRO
0
120
Tokyo_reInforce_2025_recap_iam_access_analyzer
hiashisan
0
180
赤煉瓦倉庫勉強会「Databricksを選んだ理由と、絶賛真っ只中のデータ基盤移行体験記」
ivry_presentationmaterials
2
360
生成AI時代の開発組織・技術・プロセス 〜 ログラスの挑戦と考察 〜
itohiro73
1
460
Core Audio tapを使ったリアルタイム音声処理のお話
yuta0306
0
190
ビギナーであり続ける/beginning
ikuodanaka
3
750
KubeCon + CloudNativeCon Japan 2025 Recap Opening & Choose Your Own Adventureシリーズまとめ
mmmatsuda
0
270
Featured
See All Featured
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
How STYLIGHT went responsive
nonsquared
100
5.6k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.7k
The Cult of Friendly URLs
andyhume
79
6.5k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
How to train your dragon (web standard)
notwaldorf
95
6.1k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
Rebuilding a faster, lazier Slack
samanthasiow
82
9.1k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Transcript
͋Γ͕ͱ͏ڝٕϓϩάϥϛϯά ͜Μʹͪ%PDLFS HBOBSJZB ganariya ganariya2525 ganariya2525 ganariya’s blog ganariya ganariya
͓͢Δ͜ͱ • 競技プログラミングについて • 競プロerのインターン挑戦 • Docker
3 / N ࣗݾհ • શ෦ HBOBSJZB ஜେֶӃ$4ઐ߈. • ݚڀ
• ܈ೳ • ਓೳ • झຯڝٕϓϩάϥϛϯά • ੨৭ • ྗλΠϓ • 7UVCFSͩͱӎ݄ί͕͖ • ඇπϤπϤ
4 / N ରಡऀ • ڝϓϩΛ͍ͬͯΔଔҎ߱ͷํ ɾɾਫɾ੨
ڝٕϓϩάϥϛϯά
6 / N ڝٕϓϩάϥϛϯάͱʁ • ΞϧΰϦζϜྗɾֶྗ͕ΘΕΔ • ϦΞϧλΠϜͰਓͱॱҐΛڝ͏ • ָ͍͠ʂʂ
出典: Takuya Akiba勉強か?趣味か?⼈⽣か?―プログラミングコンテストとは
7 / N ڝٕϓϩάϥϛϯάͷ৭ • Ϩʔτʹ৭͕ઃఆ͞Ε͍ͯΔ • ྫ͑ϨοτίʔμʔΊͪΌͭΑ ਓ͙Β͍ 出典:
AtCoderの参加回数が多い⼈ほどレーティングが⾼い?
ڝϓϩFSͷΠϯλʔϯઓ
9 / N ڝϓϩFSͷಘҙͳ͜ͱ • ΞϧΰϦζϜɾܭࢉྔ • ΫΤϦͷޮతͳॲཧ • ֶతࢥߟྗ
• ؆ܿͳ࣮ • όά͕ى͜Γਏ͍ɾγϯϓϧͳ࣮ • ܧଓɾઓ͢Δ͜ͱ • ຖिٳͷίϯςετʹग़Δ
10 / N ڝϓϩFSͷۤखͳ͜ͱ Ұൠ • ઃܭྗɾେ͖ͳ࣮ • ڝϓϩجຊγϯάϧϑΝΠϧ •
ϞδϡʔϧԽςετͳͲγεςϜʹ͍ۙͱ͜ΖΛ ͬͨ͜ͱ͕ͳ͍ਓଟ͍ • ΞϓϦ੍࡞ • ʮͬͨ͜ͱ͕ͳ͍ʯʹ͍ۙ ʢग़དྷͳ͍ͱ͍͏Θ͚Ͱଟͳ͍ʣ • Ϟνϕʔγϣϯ • ͳͥಇ͔͘ʁͲ͏ͯ͠ಇ͖͍͔ͨʁ͕Α͘Α͘ߟ͑Δͱ ͙͢ʹग़ͯ͜ͳ͍
11 / N Πϯλʔϯཁ߲ • ଟ͘ͷΠϯλʔϯͰʮڝϓϩҎ֎ͷεΩϧʯ͕ٻΊ ΒΕΔ • "84($& •
(Pݴޠ 8FC։ൃ • %PDLFSLT • 6OJUZFUDʜ • ڝϓϩ ʮ͏ʔʔʔʔʔΜ ൵ ʯ
12 / N ೋྲྀ • ڝϓϩͰʮɾᒵɾԫʯͰ͋Ε͓ͦΒ͘ ΠϯλʔϯڪΕͳ͍͍ͯ͘ͷͰ • ʮ੨ɾਫɾʯͳ͔ͳ͔ڝϓϩຊͰ͍͔͠ ʮ࠾༻࣌ʯऔΓ͍͔ͨ͠Εͳ͍
ظతࢿ ʮΠϯλʔϯʯ͋Δҙຯظ͕͍ؒ • ʮڝϓϩʯʹՃ͑ͯʮ͏Ұͭͷثʯ͕͋Δͱ Πϯλʔϯ༗རʹਐΉ͔͠Εͳ͍
%PDLFS • Docker初⼼者です! (間違っている可能性が⼤きいです!) • 概要をアバウトにお話します! (正確性はないです イメージ)
14 / N %PDLFSJTԿʁ • %PDLFSඇৗʹ͍࣮ܰߦڥͷԾԽٕज़ʂ ࣮ମΛίϯςφ͍ͬͯ͏Αʂ • ίϚϯυҰͭͰ.Z42-Λ༻ҙͨ͠Γ $
ͷ࣮ߦڥΛ༻ҙͰ͖Δ • νʔϜʹʮΞϓϦڥߏஙʯΛΔ࣌ શһڞ௨ͷςΩετϑΝΠϧͰߏஙͰ͖Δʂ ͔ͦ͠ͷ··σϓϩΠͰ͖Δ ʢ࠷ۙͰLTΛͬͯΦʔτεέʔϧͰ͖Δʂʣ
15 / N ༻ޠΠϝʔδ Container Instance Image Class Python Image
16 / N த֓ཁ Python Image apt install python Ubuntuの
/usr/local/bin/python コンテナはUbuntuなどのLinuxをベースとして さらにライブラリを⼊れて構築されている Python Image
17 / N %PDLFS ԾԽ 出典: Qiita【図解】Dockerの全体像を理解する -前編- @etaroid ターミナル
18 / N %PDLFS ԾԽ 出典: Qiita【図解】Dockerの全体像を理解する -前編- @etaroid ホストOS(Linux)とコンテナのベースOSを
共有している(カーネル)よって軽い (⼤まかな話しです)
19 / N %PDLFSGJMF • %PDLFSGJMFʮࣗͷ΄͍͠Πϝʔδʯʢ࣮ߦڥʣ ΛςΩετϑΝΠϧͰॻ͚Δͷ %PDLFSGJMFΛϏϧυ͢Δ͜ͱͰΠϝʔδΛ࡞ΕΔ ʢ͋ͱίϯςφʹ͢Δ͚ͩʣ Dockerfile
PHP+Apache Image RUN
20 / N %PDLFS$PNQPTF • ෳͷίϯςφΛʮZNMϑΝΠϧʯ͔Β Ұؾʹ·ͱΊͯߏஙͰ͖Δ ͜Ε͕ͳ͍ͱʮ.Z42-ͷίϯςφ࡞ͬͯŋŋŋ1)1࡞ͬ ͯŋŋŋ8PSE1SFTT࡞SZʯखͱϛε͕૿͑ͯ͠·͏ Wordpress
docker-compose up docker-compose.yml MySQL
21 / N ·ͱΊ • ΠϯλʔϯͰڝϓϩFS ʮثʯ͕͏Ұͭ͋ΔͱΑΓ༗རʹͳΓͦ͏ʂ ʢݸਓ͕ࠩ͋Γ·͢ʣ • ڝϓϩFS
• όοΫΤϯυपΓ ύϑΥʔϚϯενϡʔχϯά • ήʔϜܥɾΞϓϦܥͷߴԽɾޮԽ • ػցֶशɾਂֶश ʹ͍͍ͯΔ͔ • ΄ͱΜͲͷαʔϏεͰʮHBOBSJZBʯͰ͍ͬͯΔͷͰ Α͔ͬͨΒϑΥϩʔ͍ͯͩ͘͠͞ʙ