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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
matsuihidetoshi
May 18, 2023
Technology
1k
0
Share
既存システムのコンテナ化で得られた知見と、 全然関係ないけど自炊を支える技術
AWS EC2を中心とした構成で稼働しているシステムをコンテナ化してAWS ECSに載せ替える移行プロジェクトで得られた知見と、ただ喋りたいだけですが自炊のレシピとか工夫のお話です。
matsuihidetoshi
May 18, 2023
More Decks by matsuihidetoshi
See All by matsuihidetoshi
SA Night #3 Survival with Gen AI
matsuihidetoshi
0
17
AWS Summit Japan 2025 Community Stage - App workflow automation by AWS Step Functions
matsuihidetoshi
1
520
web-application-security
matsuihidetoshi
1
340
JAWS DAYS 2024 C-9
matsuihidetoshi
0
250
クラウドだからできた 地方主導のJAWS DevOps
matsuihidetoshi
2
590
Media JAWS 2023/1
matsuihidetoshi
1
630
Efforts to Organizing & Broadcastiong JAWS-UG's global event "JAWS PANKRATION 2021 -Up till Down-"
matsuihidetoshi
0
230
サーバレスアーキテクチャの考え方
matsuihidetoshi
0
150
コミュニティイベント配信基盤での サーバーレスアーキテクチャ実践
matsuihidetoshi
0
690
Other Decks in Technology
See All in Technology
自分のハンドルは自分で握れ! ― 自分のケイパビリティを増やし、メンバーのケイパビリティ獲得を支援する ― / Take the wheel yourself
takaking22
1
850
20260415_生成AIを専属DSに_自動レポート作成_ハンズオン_交通事故データ
doradora09
PRO
0
110
明日からドヤれる!超マニアックなAWSセキュリティTips10連発 / 10 Ultra-Niche AWS Security Tips
yuj1osm
0
550
[OpsJAWS 40]リリースしたら終わり、じゃなかった。セキュリティ空白期間をAWS Security Agentで埋める
sh_fk2
3
220
最初の一歩を踏み出せなかった私が、誰かの背中を押したいと思うようになるまで / give someone a push
mii3king
0
160
Digitization部 紹介資料
sansan33
PRO
1
7.3k
AIエージェントの権限管理 2: データ基盤の Fine grained access control 編
ren8k
0
120
CloudSec JP #005 後締め ~ソフトウェアサプライチェーン攻撃から開発者のシークレットを守る~
lhazy
0
230
Claude Code を安全に使おう勉強会 / Claude Code Security Basics
masahirokawahara
2
23k
実践ハーネスエンジニアリング:TAKTで実現するAIエージェント制御 / Practical Harness Engineering: AI Agent Control Enabled by TAKT
nrslib
9
4.1k
生成AI時代のエンジニア育成 変わる時代と変わらないコト
starfish719
0
9.9k
AI時代における技術的負債への取り組み
codenote
0
1.3k
Featured
See All Featured
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
140
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.3k
Balancing Empowerment & Direction
lara
6
1.1k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
880
How to build a perfect <img>
jonoalderson
1
5.4k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
210
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
A Tale of Four Properties
chriscoyier
163
24k
How GitHub (no longer) Works
holman
316
150k
YesSQL, Process and Tooling at Scale
rocio
174
15k
It's Worth the Effort
3n
188
29k
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
˞খӍܾߦ ʙ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ