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
既存システムのコンテナ化で得られた知見と、 全然関係ないけど自炊を支える技術
Search
matsuihidetoshi
May 18, 2023
Technology
0
1k
既存システムのコンテナ化で得られた知見と、 全然関係ないけど自炊を支える技術
AWS EC2を中心とした構成で稼働しているシステムをコンテナ化してAWS ECSに載せ替える移行プロジェクトで得られた知見と、ただ喋りたいだけですが自炊のレシピとか工夫のお話です。
matsuihidetoshi
May 18, 2023
Tweet
Share
More Decks by matsuihidetoshi
See All by matsuihidetoshi
AWS Summit Japan 2025 Community Stage - App workflow automation by AWS Step Functions
matsuihidetoshi
1
440
web-application-security
matsuihidetoshi
1
320
JAWS DAYS 2024 C-9
matsuihidetoshi
0
190
クラウドだからできた 地方主導のJAWS DevOps
matsuihidetoshi
2
510
Media JAWS 2023/1
matsuihidetoshi
1
610
Efforts to Organizing & Broadcastiong JAWS-UG's global event "JAWS PANKRATION 2021 -Up till Down-"
matsuihidetoshi
0
190
サーバレスアーキテクチャの考え方
matsuihidetoshi
0
100
コミュニティイベント配信基盤での サーバーレスアーキテクチャ実践
matsuihidetoshi
0
650
再利用可能なサーバーレス配信コンポーネント
matsuihidetoshi
0
210
Other Decks in Technology
See All in Technology
「全員プロダクトマネージャー」を実現する、Cursorによる仕様検討の自動運転
applism118
5
1.9k
初めてAWSを使うときのセキュリティ覚書〜初心者支部編〜
cmusudakeisuke
1
200
データアナリストからアナリティクスエンジニアになった話
hiyokko_data
2
430
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
8.7k
人工衛星のファームウェアをRustで書く理由
koba789
8
5.6k
複数サービスを支えるマルチテナント型Batch MLプラットフォーム
lycorptech_jp
PRO
0
260
Webブラウザ向け動画配信プレイヤーの 大規模リプレイスから得た知見と学び
yud0uhu
0
230
カミナシ社の『ID管理基盤』製品内製 - その意思決定背景と2年間の進化 #AWSUnicornDay / Kaminashi ID - The Big Whys
kaminashi
3
860
JTCにおける内製×スクラム開発への挑戦〜内製化率95%達成の舞台裏/JTC's challenge of in-house development with Scrum
aeonpeople
0
180
職種の壁を溶かして開発サイクルを高速に回す~情報透明性と職種越境から考えるAIフレンドリーな職種間連携~
daitasu
0
130
Language Update: Java
skrb
2
280
「どこから読む?」コードとカルチャーに最速で馴染むための実践ガイド
zozotech
PRO
0
200
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Code Reviewing Like a Champion
maltzj
525
40k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
We Have a Design System, Now What?
morganepeng
53
7.8k
Optimizing for Happiness
mojombo
379
70k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Speed Design
sergeychernyshev
32
1.1k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.1k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.9k
Thoughts on Productivity
jonyablonski
70
4.8k
Transcript
TTNKQদҪӳढ़ طଘγεςϜͷίϯςφԽͰಘΒΕͨݟͱɺ શવؔͳ͍͚ͲࣗਬΛࢧ͑Δٕज़
None
ҠߦϓϩδΣΫτʹ͍ͭͯ Ҡߦલ ͋Δ͖ঢ়ଶ Ϋϥυߏཧ खಈ *B$ σϓϩΠϝϯτ Ұ෦ࣗಈԽ શࣗಈԽ Մ༻ੑ
༨༟Λ࣋ͬͨϓϩϏδϣχϯά ΦʔτεέʔϦϯά োରԠ ਓྗͰଈ࣌ରԠ ࣗಈ෮چ ޙ͔Βରࡦ ՄࢹԽ ݩʑͰ͖͍ͯΔ ܧଓ ࠷େSQT͕ݟࠐ·ΕΔࠂ৴ܭଌγεςϜͷ μϯλΠϜڥҠߦ
ߏΠϝʔδ ˞࣮ࡍͷͷͱҟͳΓ·͢
ΊΜͲ͍͘͞ਤ͕ग़͖ͯͯ ಄͓͔͠ͳΓͦ͏ʜ
͍ํͷ ཛম͖ ࡞Γஔ͖ʹ ࡐྉ ཛ͜ ࠭ Ԙ ে༉ ͩ͠ͷૉ ਫ
ྉཧञ ਫΛ͵Δ·౬͘Β͍ʹ͢Δ ͵Δ·౬ͰௐຯྉࠞͥͪΌ͏ ཛͱௐຯྉΛΑࠞͥ͘Δ Ωονϯϖʔύʔʹ༉ΛછΈࠐ·ͤΔ ཛম͖ϑϥΠύϯͰՐՃݮʹ ؾΛ͚ͭͳ͕Βؤுͬͯম͘ɺר͘ ר͖ͳ͕Βͷ༉Λ͜·Ίʹͻ͘
ίϯςφ͕ಈ͔ͳ͍ ϩʔΧϧͷ։ൃͰಈ͍ͯͯ ຊ൪ʹҠߦ͢ΔͱͳΜ͔ಈ͔ͳ͍
ϩʔΧϧͰ&$4ڥΛ࠶ݱ # ΞϓϦέʔγϣϯ ͷϏϧυ # : ઌʹ app ͷσʔλϕʔεͷࢀরઌϗετΛ 127.0.0.1
͔Β db ʹॻ͖͓͑ͯ͘ docker build -t app -f app/Dockerfile . --no-cache # Nginx ͷϏϧυ # : ઌʹ nginx.conf ͷ proxy_pass ͳͲΛ 127.0.0.1 ͔Β backend ʹॻ͖͓͑ͯ͘ docker build -t nginx -f nginx/Dockerfile . --no-cache # MySQL ͷϏϧυ docker build -t mysql -f mysql/Dockerfile mysql/ --no-cache # docker network ͷ࡞ docker network create local-network # image ͷ id Λऔಘ # ͜͜Ͱग़ͯ͘Δ id ϥϯμϜͳͷͰɺԾʹ nginx fizz, app buzz, mysql fuga ͱ͢Δ docker images # MySQL ίϯςφͷىಈ docker run --name db --network local-network -p 3306:3306 -itd fuga # App ίϯςφͷىಈ # ͜͜Ͱࢦఆ͍ͯ͠Δ backend ͕ɺઌʹ nginx.conf ʹઃఆͨ͠ backend ͱରԠ͍ͯ͠Δ # ઌʹڥมϑΝΠϧ src/.env ϑΝΠϧΛ༻ҙ͓ͯ͘͠ docker run --name backend --env-file src/.env --network local-network -p 3000:3000 -itd buzz # Nginx ίϯςφͷىಈ docker run --name nginx --network local-network -p 80:80 -itd fizz # ಈ࡞֬ೝ curl localhost w &$4σʔλϓϨʔϯ݁ہίϯςφϗετΛ Ϛωʔδυʹ͚ͨͩ͠ͰϩʔΧϧͰಈ͔͢ͷͱ͋·ΓมΘΒͳ͍ w ઃఆͱ͔݁ہ%PDLFS४ڌͷͷ͕ଟ͍ w ίϯςφؒ௨৴ͷϗετ໊͚ͩҙ w ϩʔΧϧͰ%PDLFSωοτϫʔΫΛ࡞Δ w FOWͳͲͷϑΝΠϧʹڥมΛ·ͱΊ͓ͯ͘ w ϙʔτͱ͔ؒҧ͑ͳ͍Α͏ʹ ˒ϙΠϯτ ˠ͜ΕͰେମݪҼ͕ಛఆͰ͖Δ
ίϯςφಈ͔Μͯ͘ ಄͓͔͠ͳΓͦ͏ʜ
νʔζ ര৯͍ w ໘ͰΕΔνʔζΓث w ύϧϛδϟʔϊϨοδϟʔϊ w dHͰԁఔͰ݁ߏߴ͍͚Ͳɺ ී௨ͷคνʔζී௨ʹߴ͍
w ී௨ͷคνʔζͤ͞ΔͨΊ͔ཛനͱ͔ೖͬͯͯ ༹͚ͳ͍ͷͰΧϧϘφʔϥͱ͔࡞Εͳ͍ w ҰݸങͬͯԿճ͔ͰऴΘͬͪΌ͏ͱ͔Ͱͳ͍͔Β Ҋ֎ίεύѱ͘ͳ͍ ˠ20-ര্͛
͋ͳͨͷίϯςφ 4*(5&3.Λਖ਼͘͠ϋϯυϦϯά͠·͔͢ 4*(5&3. ΄ͳɺΩϦͷ͑͑ͱ͜Ͱʜ
ϩʔϦϯάΞοϓσʔτ /&8 0-% ᶃ 0-% ᶄ ᶅ /&8
ࢀߟهࣄ Ҿ༻&$4ͷΞϓϦέʔγϣϯΛਖ਼ৗʹγϟοτμϯ͢Δํ๏ʢެࣜʣ IUUQTBXTBNB[PODPNKQCMPHTOFXTHSBDFGVMTIVUEPXOTXJUIFDT
ࠓճͷߏͰͷݕ౼ࣄ߲ w3BJMTίϯςφQVNBͰରԠࡁΈ w(PίϯςφϥΠϒϥϦະ༻͕࣮ͩͯ͋ͬͨ͠ w'MVFOUEϓϩηεࣗମͳ͍͚Ͳผ͋Γ
GMVTI@BU@TIVUEPXO Ҿ༻IUUQTEPDT fl VFOUEPSHDPO fi HVSBUJPOCV ff FSTFDUJPO ˠϓϩηε(SBDFGVMʹࢭ·Δ͕ όοϑΝέΞ͕ඞཁ
ίϯςφ͏·͘ΞοϓσʔτͰ͖ͳͯ͘ ಄͓͔͠ͳΓͦ͏ʜ
த՚Ͱ༉ઁऔͯ͠ ετϨεΕΔ λΧϥྉཧͷͨΊͷڵञˠ ˒த՚ͩ͠ͱ͜ΕͰ ΊͬͪΌళຯʹ
ࠂ
w ࡢʹଓ͖+"84ϛʔτΛ։࠵͠·͢ w +"84ϛʔτͷʮϛʔτʯʮ.FFUʯͱʮ.FBUʯͷμϒϧɾϛʔχϯάͰษڧձͱ͓ͳͲΛ৯ͳ͕Βަྲྀ͢Δ ͱ͍͏झࢫͱͳΓ·͢ w શࠃͷ"84ϑΝϯࢀՃΠϕϯτͳͷͰ͋·Γͷͳ͍ਓಉ࢜ͷܨ͕ΓΛ࡞͍͚ͬͯͨͩͨΒͱࢥ͍·͢ w ·ͨɺຊΠϕϯτʮษڧձʢ-5ʣʴ࠙ձʢ##2ʣʯΛϫϯύοΫʹͨ͠ΠϕϯτͱͳΓ·͢ w
˞খӍܾߦ ʙ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ