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
Apexで複数環境のLambda関数をデプロイする話 #jawsug
Search
kariyayo
July 14, 2016
Programming
2k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Apexで複数環境のLambda関数をデプロイする話 #jawsug
kariyayo
July 14, 2016
More Decks by kariyayo
See All by kariyayo
MobX の話
kariyayo
0
380
echoサーバーを書いてI/Oと仲良くなる話
kariyayo
3
880
SpringはどうやってDIしているのか? #jjug_ccc
kariyayo
4
3.6k
近況報告といろいろ作るのが楽しい話 #yokohama_north
kariyayo
0
910
目指せ3つ星インデックス #yokohama_north
kariyayo
2
880
Spring Boot と Swagger #渋谷java
kariyayo
4
5.8k
Gradleを使えるようになるために
kariyayo
0
100
Other Decks in Programming
See All in Programming
LLMによるContent Moderationの本番運用の裏側と品質担保への挑戦
suikabar
3
820
フロントエンドとバックエンドで「1文字」を揃えよう
youkidearitai
PRO
0
780
鹿野さんに聞く!『TypeScriptコードレシピ集』で磨く実践力
tonkotsuboy_com
4
970
Mujeres en SEO Summit 2026 - Greatest Disaster Hits en Web Performance
guaca
0
230
AIを活用したE2Eテスト実装効率化のあゆみ / ebisu-mobile-14-kotetu
kotetuco
0
160
エンジニアと一緒にテストコードの設計と実装を改善した話
mototakatsu
0
250
The Bowling Game- From Imperative to Functional Programming - Part 1
philipschwarz
PRO
0
240
コンテキストの使い捨てをやめる — ビジネスルール駆動開発と miko —
ioki
0
260
AIで効率化できた業務・日常
ochtum
0
160
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
290
Strategic Design in the Frontend: Moduliths & Micro Frontends @DDDEurope
manfredsteyer
PRO
0
140
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
4
1.6k
Featured
See All Featured
Fireside Chat
paigeccino
42
4k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
340
Docker and Python
trallard
47
3.9k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
150
The Cult of Friendly URLs
andyhume
79
6.9k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
250
Making the Leap to Tech Lead
cromwellryan
135
10k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
400
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Transcript
"QFYͰෳڥͷ -BNCEBؔΛσϓϩΠ͢Δ +"846(ΞʔΩςΫνϟઐࢧ෦ΫϥυωΠςΟϒՊձ$%1ٞձ CBUJ UXJUUFS!CBUJ@
• -BNCEBͷσϓϩΠͲ͏Ζ͏ʁ • ࣗಈԽ͍ͨ͠
http://apex.run/ ͜ͷࢿྉͰ v0.10.2 Λରͱ͠·͢
"QFY • [JQ Ξοϓϩʔυ όʔδϣϯൃߦ ΤΠϦΞεͷߋ ৽Λͬͯ͘ΕΔ • ෳͷ-BNCEBؔΛѻ͑Δ •
(P • (PͰॻ͍ͨ-BNCEBؔʹରԠͯ͠Δ • ͳͲͳͲଞʹ৭ʑ
"QFY • ϓϩδΣΫτͱ͍͏୯ҐͰෳͷ-BNCEBؔΛཧ my-pj ├── functions/ │ ├── func1/ │
│ ├── index.js │ │ ├── note_modules/ │ │ └── package.json │ └── func2/ │ └── index.js └── project.json
"QFY • ϓϩδΣΫτͱ͍͏୯ҐͰෳͷ-BNCEBؔΛཧ my-pj ├── functions/ │ ├── func1/ │
│ ├── index.js │ │ ├── note_modules/ │ │ └── package.json │ └── func2/ │ └── index.js └── project.json { "name": "my-lambda-pj", "description": "", "runtime": "nodejs4.3", "memory": 128, "timeout": 5, "role": "arn:aws:iam::<hogehoge>" } QSPKFDUKTPOʹ-BNCEBͷઃఆΛهड़͢Δ
"QFY • ϓϩδΣΫτͱ͍͏୯ҐͰෳͷ-BNCEBؔΛཧ my-pj ├── functions/ │ ├── func1/ │
│ ├── index.js │ │ ├── note_modules/ │ │ └── package.json │ └── func2/ │ └── index.js └── project.json ͰσϓϩΠ $ apex deploy
"QFY • "QFYΛબΜͩཧ༝ • ؆୯ʹ͑ͨɻΠϯετʔϧ؆୯ͩͬͨ • ϓϩδΣΫτ୯ҐͰཧͰ͖Δ • "1*(BUFXBZΘͳ͍ •
3VOUJNFͱͯ͠/PEFKTΛ͑Δ
ຊ൪ڥͱ։ൃڥͰ ผͷόʔδϣϯΛ͍͍ͨ
.VMUJQMF&OWJSPONFOUT • "QFYෳڥΛαϙʔτͯ͠Δ my-pj ├── functions/ │ ├── func1/ │
│ ├── index.js │ │ ├── note_modules/ │ │ └── package.json │ └── func2/ │ └── index.js ├── project_dev.json └── project_prod.json 環境毎の設定ファイルを用意 • project_dev.json • project_prod.json
.VMUJQMF&OWJSPONFOUT • "QFYෳڥΛαϙʔτͯ͠Δ my-pj ├── functions/ │ ├── func1/ │
│ ├── index.js │ │ ├── note_modules/ │ │ └── package.json │ └── func2/ │ └── index.js ├── project_dev.json └── project_prod.json $ apex deploy --env prod ͰσϓϩΠ
͔͠͠
"QFYͰͭͷ ΤΠϦΞε͔͠࡞ΒΕͳ͍
"QFYͷΤΠϦΞε • $633&/5ͱ͍͏ΤΠϦΞε͕όʔδϣϯΛࢦ͢ version1 CURRENT
"QFYͷΤΠϦΞε • $633&/5ͱ͍͏ΤΠϦΞε͕όʔδϣϯΛࢦ͢ version2 version1 CURRENT σϓϩΠޙ
ڥ͝ͱͷΤΠϦΞε ࡞Γ͍ͨͷ͚ͩͲ
http://apex.run/#how-do-you-manage-multiple-environments “It’s highly recommended to create separate AWS accounts for
staging and production environments.” • "QFYͰɺڥ͝ͱʹ"84ΞΧϯτΛ͚Δ ͜ͱΛਪͯ͠Δ
Θ͔Δ͚Ͳ
ͦ͏͍͔ͳ͍͜ͱ͋Δ
-BNCEBؔΛڥ͝ͱʹ ࡞ͬͯ͠·͓͏
• ઃఆϑΝΠϧͷOBNF@UFNQMBUFϓϩύςΟ my-pj ├── functions/ │ ├── func1/ │ │
├── index.js │ │ ├── note_modules/ │ │ └── package.json │ └── func2/ │ └── index.js ├── project_dev.json └── project_prod.json { ・・・, "nameTemplate": "・・・" }
• ઃఆϑΝΠϧͷOBNF@UFNQMBUFϓϩύςΟ • σϑΥϧτ \\1SPKFDU/BNF^^@\\'VODUJPO/BNF^^ • ڥຖͷઃఆϑΝΠϧͰαϑΟοΫεΛ͚ͭΔ \\1SPKFDU/BNF^^@\\'VODUJPO/BNF^^@EFW \\1SPKFDU/BNF^^@\\'VODUJPO/BNF^^@QSPE
• NZQK@GVOD@EFWͱ͍͏໊લͷ-BNCEBؔ • NZQK@GVOD@QSPEͱ͍͏໊લͷ-BNCEBؔ $ apex deploy --env
prod $ apex deploy --env dev
version2 version1 CURRENT version2 version1 CURRENT my-pj_func1_dev my-pj_func1_prod • -BNCEBؔࣗମ͕ผʹͳΔͷͰɺΤΠϦΞε͕
͔ͭ͠ͳͯ͘ڥຖʹ͍͚͕Մೳ
·ͱΊ
• -BNCEBؔͷσϓϩΠΛࣗಈԽ͍ͨ͠ • "QFY͍͍͢ • OBNF@UFNQMBUFΛͬͯڥຖͷ-BNCEBؔ Λ༻ҙ͢Εɺͭͷ"84ΞΧϯτͰෳ ڥʹରԠͰ͖Δ • OBNF@UFNQMBUF͍Βͳ͘ͳ͍ʁͱ͍͏JTTVF͕
্͕ͬͯΔͷͰࠓޙผͷํ๏ʹͳΔ͔ • IUUQTHJUIVCDPNBQFYBQFYJTTVFT
• -BNCEBؔͷσϓϩΠΛࣗಈԽ͍ͨ͠ • "QFY͍͍͢ • OBNF@UFNQMBUFΛͬͯڥຖͷ-BNCEBؔ Λ༻ҙ͢Εɺͭͷ"84ΞΧϯτͰෳ ڥʹରԠͰ͖Δ • OBNF@UFNQMBUF͍Βͳ͘ͳ͍ʁͱ͍͏JTTVF͕
্͕ͬͯΔͷͰࠓޙผͷํ๏ʹͳΔ͔ • IUUQTHJUIVCDPNBQFYBQFYJTTVFT ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ