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
CircleCIを使って 「完全サーバーレス運用」を 実現した話
Search
Akifumi Tominaga
March 05, 2019
Programming
2
460
CircleCIを使って 「完全サーバーレス運用」を 実現した話
CircleCIを使って「完全サーバーレス運用」を実現した話
Akifumi Tominaga
March 05, 2019
Tweet
Share
More Decks by Akifumi Tominaga
See All by Akifumi Tominaga
Firebase Remote Config を利用した Feature Flags の導入
decoch
0
150
Firebase Performance を利用したアプリの起動時間高速化
decoch
0
120
依存関係を静的解析しよう
decoch
2
380
GOで作るCLIツール
decoch
1
340
DBFlute Introで 気軽にDBコメント変更
decoch
0
120
DBFlute-intro
decoch
0
57
Other Decks in Programming
See All in Programming
データベースのオペレーターであるCloudNativePGがStatefulSetを使わない理由に迫る
nnaka2992
0
240
Drawing Heighway’s Dragon- Recursive Function Rewrite- From Imperative Style in Pascal 64 To Functional Style in Scala 3
philipschwarz
PRO
0
100
1年目の私に伝えたい!テストコードを怖がらなくなるためのヒント/Tips for not being afraid of test code
push_gawa
1
630
Better Code Design in PHP
afilina
0
180
AWS Step Functions は CDK で書こう!
konokenj
4
670
SwiftUI移行のためのインプレッショントラッキング基盤の構築
kokihirokawa
0
160
Lambdaの監視、できてますか?Datadogを用いてLambdaを見守ろう
nealle
0
170
第3回関東Kaggler会_AtCoderはKaggleの役に立つ
chettub
3
1.2k
「個人開発マネタイズ大全」が教えてくれたこと
bani24884
1
270
SwiftUI Viewの責務分離
elmetal
PRO
2
280
iOSでQRコード生成奮闘記
ktcryomm
2
110
Amazon Bedrockマルチエージェントコラボレーションを諦めてLangGraphに入門してみた
akihisaikeda
1
150
Featured
See All Featured
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
How to Ace a Technical Interview
jacobian
276
23k
We Have a Design System, Now What?
morganepeng
51
7.4k
How GitHub (no longer) Works
holman
314
140k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
Automating Front-end Workflow
addyosmani
1369
200k
For a Future-Friendly Web
brad_frost
176
9.6k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
Transcript
CircleCIΛͬͯ ʮશαʔόʔϨεӡ༻ʯΛ ࣮ݱͨ͠ 2019/03/05 CircleCI Meetup @decoch
ࣗݾհ • ໊લ : Ӭߊ࢙ @decoch • ձࣾ : גࣜձࣾϏζϦʔν
• ৬छ : Engineer(Backend, SmartPhoneApp) • ݴޠ : Golang, Ruby, Kotlin, Swift • CI/CD͜͜ͰΓ࢝Ίͨ •
એ • CircleCIͷϋοΧιϯͰOrbΛ࡞Γ·ͨ͠ • https://github.com/decoch/line-orb • https://github.com/decoch/chatwork-orb
ͪͳΈʹ • https://tech.bizreach.co.jp/posts/254/circleci/
Agenda • എܠ • ԿΛͨ͠ͷ͔ • CircleCIΛͬͯΈͯ • ·ͱΊ •
Q&A
എܠ
എܠ • BizHintͰ Ruby on Rails Λͬͯ։ൃ • EC2 ͰࣗͨͪͰ੬ऑੑͷύονΛͯɺ
όʔδϣϯΞοϓΛ͢Δඞཁ͕͋Δ • CIڥͱͯ͠JenkinsαʔόʔΛཱ͍ͯͯΔ
എܠ • ৽نαʔϏεΛ GCP ͷ App Engine Λͬͨ αʔόʔϨεͳΞϓϦέʔγϣϯΛ։ൃ •
৽نαʔϏεͷβϦϦʔεʹࡍ͠ɺCIڥΛ උ͢Δඞཁ͕͋Δ • CIπʔϧͷΫϥυαʔϏεͳ͍͔ௐࠪ
ԿΛͬͨͷ͔
ͦͦશαʔόʔϨεͱ Compute Engine Amazon EC2 App Engine Cloud Functions AWS
Lambda • ※νʔϜͷߟ͑
࣮ࡍͷߏ App Engine Cloud Datastore Cloud Functions Cloud Pub/Sub Cloud
Bigtable
ԿΛͬͨͷ͔ • αʔόʔཧΛͤͣʹαʔϏεΛӡ༻͍ͨ͠ • GCPͷϑϧϚωʔδυͳαʔϏεΛར༻ • CI/CDCircleCIΛར༻
࣮ࡍʹӡ༻ͯ͠Έͯ • ΠϯϑϥઐͷΤϯδχΞͳ͠Ͱӡ༻͕Ͱ͖ ͍ͯΔ • αʔόʔͷઃఆ͕গͳ͘ૉૣ͘αʔϏεΛϦ ϦʔεͰ͖ͨ
CircleCIΛͬͯΈͯ
CircleCIΛͬͯΑ͔ͬͨ • ؆୯ʹCIڥΛߏஙͰ͖Δ • ઃఆϑΝΠϧΛGitཧͰ͖Δ • ڞ༗ͷઃఆΛOrbͰڞ༗Ͱ͖Δ
؆୯ʹCIڥΛߏஙͰ͖Δ 1. .circleci/config.yml ͷઃఆϑΝΠϧΛ࡞ 2. config.yml ʹઃఆΛهड़ 3. GitHubʹϓογϡ 4.
CircleCIͰϏϧυΛ։࢝
ઃఆϑΝΠϧΛGitཧͰ͖Δ • .circleci/config.yml ʹઃఆΛهड़͢Δ • αʔόʔαΠυΤϯδχΞ͕ؾܰʹઃఆมߋ ΛͰ͖Δ • ΠϯϑϥઐͷΤϯδχΞͳ͠ͰαʔϏεͷ ӡ༻͕Ͱ͖͍ͯΔ
ڞ༗ͷઃఆΛOrbͰڞ༗Ͱ͖Δ
վળ • 2.1ϦϦʔεʹϦϦʔεͨ͠ͷͰɺσϓϩΠί ϚϯυͷOrbԽ͕Ͱ͖͍ͯͳ͍ • ձࣾશମͰಋೖ͍ͯ͠ͳ͍ͷͰɺΠϯελϯ ε͕গͳ͘Ωϡʔ͕ཷ·Γ͕ͪ • CircleCIͷyamlͷઃఆ͕ؾܰʹςετͰ͖ͣ࠷ ॳखؒऔͬͨ
·ͱΊ
·ͱΊ • αʔόʔϨεͰӡ༻͢Δ͜ͱͰӡ༻ίετΛ Լ͛Δ͜ͱ͕Ͱ͖ͨ • ӡ༻ίετݮ͚ͩͰͳ͘ɺαʔϏεͷཱͪ ্্͕͛Δ • ࡉ͔͍νϡʔχϯά͕ඞཁʹͳͬͨΒࣗલͰ ӡ༻͢ΔΑ͏ʹͳΔ͔
Q&A