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
220
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
What's new in Spring Modulith?
olivergierke
1
170
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
250
Server Side Kotlin Meetup vol.16: 内部動作を理解して ハイパフォーマンスなサーバサイド Kotlin アプリケーションを書こう
ternbusty
3
240
Claude Agent SDK を使ってみよう
hyshu
0
1.4k
なんでRustの環境構築してないのにRust製のツールが動くの? / Why Do Rust-Based Tools Run Without a Rust Environment?
ssssota
14
46k
20251016_Rails News ~Rails 8.1の足音を聴く~
morimorihoge
3
730
モテるデスク環境
mozumasu
3
1.3k
Foundation Modelsを実装日本語学習アプリを作ってみた!
hypebeans
1
130
O Que É e Como Funciona o PHP-FPM?
marcelgsantos
0
200
オープンソースソフトウェアへの解像度🔬
utam0k
17
3.1k
EMこそClaude Codeでコード調査しよう
shibayu36
0
420
Ktorで簡単AIアプリケーション
tsukakei
0
110
Featured
See All Featured
Writing Fast Ruby
sferik
630
62k
Side Projects
sachag
455
43k
Optimizing for Happiness
mojombo
379
70k
Keith and Marios Guide to Fast Websites
keithpitt
411
23k
Visualization
eitanlees
149
16k
Balancing Empowerment & Direction
lara
5
700
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.7k
Designing for humans not robots
tammielis
254
26k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
A Tale of Four Properties
chriscoyier
161
23k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.7k
The Pragmatic Product Professional
lauravandoore
36
7k
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