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
490
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
210
Firebase Performance を利用したアプリの起動時間高速化
decoch
0
160
依存関係を静的解析しよう
decoch
2
400
GOで作るCLIツール
decoch
1
380
DBFlute Introで 気軽にDBコメント変更
decoch
0
130
DBFlute-intro
decoch
0
65
Other Decks in Programming
See All in Programming
iOSアプリの信頼性を向上させる取り組み/ios-app-improve-reliability
shino8rayu9
0
150
大規模アプリのDIフレームワーク刷新戦略 ~過去最大規模の並行開発を止めずにアプリ全体に導入するまで~
mot_techtalk
0
380
iOSエンジニア向けの英語学習アプリを作る!
yukawashouhei
0
180
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
150
Advance Your Career with Open Source
ivargrimstad
0
350
GitHub Actions × AWS OIDC連携の仕組みと経緯を理解する
ota1022
0
240
非同期jobをtransaction内で 呼ぶなよ!絶対に呼ぶなよ!
alstrocrack
0
540
CSC305 Lecture 03
javiergs
PRO
0
230
複雑化したリポジトリをなんとかした話 pipenvからuvによるモノレポ構成への移行
satoshi256kbyte
1
790
株式会社 Sun terras カンパニーデック
sunterras
0
230
プロダクト開発をAI 1stに変革する〜SaaS is dead時代で生き残るために〜 / AI 1st Product Development
kobakei
0
490
実践AIチャットボットUI実装入門
syumai
7
2.5k
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Code Review Best Practice
trishagee
72
19k
Side Projects
sachag
455
43k
Typedesign – Prime Four
hannesfritz
42
2.8k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.9k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Faster Mobile Websites
deanohume
310
31k
Practical Orchestrator
shlominoach
190
11k
Site-Speed That Sticks
csswizardry
11
880
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