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
1.6k
0
Share
ありがとう競技プログラミングこんにちはDocker
ganyariya
July 17, 2020
More Decks by ganyariya
See All by ganyariya
FastAPI+VercelでZennのバッジをお手軽に作る
ganariya
0
900
The Hundred Machine Learning 7.4-7.7
ganariya
0
68
輪講 The hundred ML3.3-3.5
ganariya
0
110
Other Decks in Technology
See All in Technology
小説執筆のハーネスエンジニアリング
yoshitetsu
0
560
AI時代のガードレールとしてのAPIガバナンス
nagix
0
220
クラウドネイティブな開発 ~ 認知負荷に立ち向かうためのコンテナ活用
literalice
0
110
マルチプロダクトの信頼性を効率良く保っていくために
kworkdev
PRO
0
150
レビューしきれない?それは「全て人力でのレビュー」だからではないでしょうか
amixedcolor
0
300
MLOps導入のための組織作りの第一歩
akasan
0
320
No Types Needed, Just Callable Method Check
dak2
1
750
Bill One 開発エンジニア 紹介資料
sansan33
PRO
6
18k
Introduction to Bill One Development Engineer
sansan33
PRO
0
410
AI時代 に増える データ活用先
takahal
0
200
AI駆動1on1〜AIに自分を育ててもらう〜
yoshiakiyasuda
0
120
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1.1k
Featured
See All Featured
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
64
53k
Building AI with AI
inesmontani
PRO
1
900
Tell your own story through comics
letsgokoyo
1
890
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
AI: The stuff that nobody shows you
jnunemaker
PRO
6
570
Become a Pro
speakerdeck
PRO
31
5.9k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
200
For a Future-Friendly Web
brad_frost
183
10k
The agentic SEO stack - context over prompts
schlessera
0
740
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Exploring anti-patterns in Rails
aemeredith
3
320
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
180
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ʯͰ͍ͬͯΔͷͰ Α͔ͬͨΒϑΥϩʔ͍ͯͩ͘͠͞ʙ