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-composeでプロダクション環境を運用したるでっ
Search
T.Nishimura
August 23, 2019
Technology
2
320
ゆるいdocker-composeでプロダクション環境を運用したるでっ
docker meetup kansai#4 登壇資料
T.Nishimura
August 23, 2019
Tweet
Share
Other Decks in Technology
See All in Technology
Understanding_Thread_Tuning_for_Inference_Servers_of_Deep_Models.pdf
lycorptech_jp
PRO
0
160
KubeCon + CloudNativeCon Japan 2025 Recap by CA
ponkio_o
PRO
0
290
なぜ私はいま、ここにいるのか? #もがく中堅デザイナー #プロダクトデザイナー
bengo4com
0
1.3k
AI専用のリンターを作る #yumemi_patch
bengo4com
5
3.9k
「クラウドコスト絶対削減」を支える技術—FinOpsを超えた徹底的なクラウドコスト削減の実践論
delta_tech
4
130
高速なプロダクト開発を実現、創業期から掲げるエンタープライズアーキテクチャ
kawauso
2
7.6k
生まれ変わった AWS Security Hub (Preview) を紹介 #reInforce_osaka / reInforce New Security Hub
masahirokawahara
0
410
事業成長の裏側:エンジニア組織と開発生産性の進化 / 20250703 Rinto Ikenoue
shift_evolve
PRO
2
18k
LangChain Interrupt & LangChain Ambassadors meetingレポート
os1ma
2
280
生成AI活用の組織格差を解消する 〜ビジネス職のCursor導入が開発効率に与えた好循環〜 / Closing the Organizational Gap in AI Adoption
upamune
6
5k
モバイル界のMCPを考える
naoto33
0
410
fukabori.fm 出張版: 売上高617億円と高稼働率を陰で支えた社内ツール開発のあれこれ話 / 20250704 Yoshimasa Iwase & Tomoo Morikawa
shift_evolve
PRO
2
6.2k
Featured
See All Featured
Faster Mobile Websites
deanohume
307
31k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Writing Fast Ruby
sferik
628
62k
RailsConf 2023
tenderlove
30
1.1k
How STYLIGHT went responsive
nonsquared
100
5.6k
Embracing the Ebb and Flow
colly
86
4.7k
Into the Great Unknown - MozCon
thekraken
39
1.9k
Practical Orchestrator
shlominoach
188
11k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Gamification - CAS2011
davidbonilla
81
5.3k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Transcript
# ΏΔ͍docker-composeͰ ϓϩμΫγϣϯڥΛӡ༻ͨ͠ΔͰͬ!
## ಥવͰ͕͢dockerͬͯ·͔͢?? ຖͬͯ·͢^^
## ͬͱͦͷલʹࣗݾհ • ଜ ඒ (@takumiio) • ࣗশ;Δͨͬ͑͘͢Μ͡ʹ͋ • લʹגࣜձࣾLESTAS(http://lestas.jp/)
(چձ໊ࣾ:໊ೖΕ࡞ॴ)ʹδϣΠϯ • takumi.ioӡӦͯ͠·͢ • ΊͬͪΌۓு͍ͯ͠·͢ɻ ॳΊͯͷొஃ&౾ϝϯλϧͳͷͰੜ ஆ͘ݟक͍ͬͯͬͯͩ͘͞…
## docker-compose ศརͰ͢ΑͶ
## docker-composeͷศརͳͱ͜Ζ • docker-compose.yml༻ҙ͢Δ͚ͩͰ·Δ͝ͱ ڥ༻ҙ • طଘͷڥʹӨڹ͞Εͳ͍ͷͰϓϩδΣΫτϝ ϯόʔશһͷ։ൃڥߏஙͱͬͯ؆୯
## Ͱ…ࡢࠓͷϓϩμΫγϣϯͷ ڥͱ͍͏ͱ…
• ʮ͏ͪcapistorano͔ͭͬͯΔʯ • ʮखಈ(·ͨϦϞʔτ)Ͱgit pullʯ • ʮ͋͊͊͊Δ͌͌͌͢Μ͎͎͎͘ (rsync)ʯ • ʮFTPͰ͢(ŝžŕ)ʯ
※ՍۭͷͰ͕͢શͯܦݧͯ͠·͢
## ։ൃͰdockerͬͯͯ ϓϩμΫγϣϯͰͬͯͳ͍ͬ!!
## ϓϩμΫγϣϯͰ͑ͳ͍ཧ༝ྫ • ϓϩμΫγϣϯͷಋೖෑډ͕ߴ͍ • Kubernetesͱ͔ผ్ίϯςφΫϥυͷࣝඞཁͱ͔ • ϓϩμΫγϣϯ༻ͷίϯςφΠϝʔδ (௨শΰʔϧσϯΠϝʔδ)͕༻ҙͰ͖ͳ͍ •
Θ͔ΔɻΊΜͲ͍͘͞ΑͶɻ • uptime͕1000day͔͑ͨΒdockerೖΕͯ࠶ىಈͨ͘͠ͳ͍ • ΒΜ͕n ͰͦͷڥΛ࠶ىಈ͢Δͷ͕ා͍ͬͯؾ࣋ͪΘ͔Γ· ͢
͝ఏҊ͕͋Γ·ͬ͢!!
͍ͬͦͷ͜ͱ ΏΔ͍docker-compose Ͱӡ༻ͯ͠Έ·͠ΐ͏!!
## ΏΔ͍docker-composeͱ • ։ൃͰͬͯΔdocker-composeΛͪΐͬ͜ͱฤूͯ͠ ϓϩμΫγϣϯ • શͳΰʔϧσϯΠϝʔδͷ࡞Λࢦ͞ͳ͍ (ϘϦϡʔϜ͔͍͍ͭͬͯ͠ɺίϯςφͷαΠζؾʹ͠ͳ͍ͬ) •
ͦͷ͔ΘΓগʑͷμϯλΠϜΛڐ༰ (͍ͩ͠Ͱ͍͔Α͏ʹͰΧόʔͰ͖ΔΑ) • docker-compose.yml͚ͩͰ݁ (ͪΖΜDockerfile࡞Γ͍ͨͳΒ࡞ͬͯOKΑὑ)
## ϝϦοτ
## ϝϦοτ • ։ൃڥͷڥΛϓϩμΫγϣϯʹͦͷ··υΥϯͱߏஙͰ͖Δ • γϯϓϧ docker-compose up -d Ͱࠓ͔Β͋ͳͨϓϩμΫγϣϯ
• ಥવͷࢮ͘Β͍ͳΒ෮چͰ͖Δ!! ͔… (restart: always) • όʔδϣϯμϯ؆୯!! (image: foo:0.0.2 -> foo:0.0.1 ͚ͩͰΦοέʔ! ϘϦϡʔϜͬͯΔͳΒ git checkout ͰOK!!) • ςδϡϯγϣ??docker-compose.ymlݟ͍ͯͩ͘͞
## σϝϦοτ
## σϝϦοτ • KubernetesͳͲͷΨνπʔϧͱൺΔͱශऑ • େ͖ͳίϯςφͩͱॏ͘ͳͬͨΓಥવͷࢮͷ্ཱ͕͕֬Δ • μϯλΠϜ͕ൃੜ͍͢͠ • ίϯςφͷࢮ
= αʔϏεఀࢭ • ෳͷϗετΛލ͙ͳͲ ෳࡶͳ͜ͱΛ͠Α͏ͱ͢Δͱ٧Ή…͔͠Εͳ͍
## ͰେৎͩͲΜ!! σϝϦοτ࣍ୈͰ͋Δఔ૬ࡴͰ͖ΔͲΜ!!
## ྫ • μϯλΠϜରࡦ • CDN with ΩϟογϡͰΈ͔͚ͷμϯλΠϜΛ੍ • docker-compose
down ͢Δલʹ docker-compose pull ͠ͱ͘ • ಥવͷࢮରࡦ • Քಈͤ͞ΔαʔόͷεϖοΫΛ্͓͛ͯ͘ • සൟʹμϯ͢ΔΑ͏ͳΒίϯςφΠϝʔδͷόʔδϣϯΛ ࠷ޙʹ҆ఆՔಈ͍ͯͨ͠όʔδϣϯʹμϯάϨʔυ͢Δ
## ͔͠σϝϦοτΛΓӽ͑ͯ ্ڃऀͳΔͱ͞ΒͳΔϝϦοτ͕ಘΒΕΔ!! • CIπʔϧʹίϯςφ৯ΘͤͯDevOps!! • docker-composer͚ͩͰͰ͖ͳ͔ͬͨ k8s with GCPͳͲͰεέʔϧ෮چ
ΦʔτϚςΟοΫʹ!! • ͪͳΈʹAWSͰ͢ɻ
## ӡ༻ྫ
## Θ͍ͷձࣾͰࠓ࡞ͬͯΔ լঢ়αʔϏεͷϓϩμΫτ(໊લ·ͩͳ͍…) • ݱࡏࣾϨϏϡʔͷεςʔδɻ ຖσϓϩΠͰਐḿਐΉ͔Β্࢘ϝϯόʔʹͬ͜ΓͰ!! • ͪΖΜϦϦʔε࠷ॳdocker-composeͰ͍͘Ͱͬ!! • ෛՙ͕ߴ͘ͳΔ͜ΖʹΠϯϑϥΤϯδχΞʹؙ͛ͯ͠
k8s with GCPʹҠߦ!! • 10݄ϦϦʔε͔ΒΈΜͳൃͯͬ͠!!
takumi.io • ݸਓϒϩά݉ϙʔτϑΥϦΦ݅ࣗݾຬ༻ͳͷͰམͪͯ ͳ͠ • ssh takumi.io 'docker-compose up --build
-d' ͰσϓϩΠྃͱ͔εςΩΜ • t3.nanoͰӡ༻ͯ͠Δ͚ͲΠϥϯ͜ͱͨ࣌͠ (σϓϩΠͱ͔σϓϩΠͱ͔σϓϩΠͱ͔) Ҏ֎ࠓͷͱ͜Ζ҆ఆՔಈ
## ·ͱΊ
## ·ͱΊ • ͔ͤͬ͘։ൃڥʹdocker-compose͍ΕͯͬͯΔͳΒ ϓϩμΫγϣϯdockerΘͳ͍ͱ͍ͬͨͳ͍ͬ • αʔϏεμϯͯ͠ࠔΔͻͱ͕͍ͳ͍ΞʔϦεςʔδʹ ͱͬͯ࠷ద • σϓϩΠ͕ͨͷ͍ͬ͠!!
ϢʔβʹϓϩμΫτΛݟͤΕͯ ͡ΊͯՁΛఏڙͰ͖Δͱࢥ͏ͷͰ ͦͷεϐʔυ͕࠷ʹͳΔͨΊͷ ͓ख͍ʹͳΕ͍͍ͳ͊ͱࢥ͍ ͓͍͖ͤͯͨͩ͞·ͨ͠ɻ
͖ΐɺࠓͷεϥΠυޙͰͪΌΜͱڞ༗͢ΔΜ͔ͩΒͶͬ!! ͔ɺצҧ͍͠ͳ͍ͰΑͶͬ!!ɺͭʹ͋ΜͨͨͪͷͨΊͳΜ͔͡Όͳ͍Μ͔ͩΒͶͬ!! dockerͷීٴͷͨΊΑͬ!! >< “## ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠”
࣭͝ͳͲ͋Γ·ͨ͠ΒͲ͏ͧ!!