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_Meetup3_LT
Search
Yasuhiroki
September 15, 2017
Programming
0
600
CircleCI_Meetup3_LT
Yasuhiroki
September 15, 2017
Tweet
Share
More Decks by Yasuhiroki
See All by Yasuhiroki
自分に勉強させるには
yasuhiroki
1
430
Android Studio `Command+Shift+A`
yasuhiroki
0
370
シェルスクリプトをサーバーレスで cron したい
yasuhiroki
1
850
rails new コマンド
yasuhiroki
1
790
自動化を習慣化する
yasuhiroki
2
15k
GitHub Actions Parallel Testing
yasuhiroki
1
1.3k
circleci.vim
yasuhiroki
0
1.7k
ベンチャー企業がCircleCIを選んだ理由と活用方法
yasuhiroki
1
820
Rubyの正規表現を調べてみた
yasuhiroki
0
890
Other Decks in Programming
See All in Programming
Domain-centric? Why Hexagonal, Onion, and Clean Architecture Are Answers to the Wrong Question
olivergierke
3
980
オンデバイスAIとXcode
ryodeveloper
0
190
オープンソースソフトウェアへの解像度🔬
utam0k
17
3.2k
Leading Effective Engineering Teams in the AI Era
addyosmani
7
650
Reactive Thinking with Signals and the Resource API
manfredsteyer
PRO
0
120
バッチ処理を「状態の記録」から「事実の記録」へ
panda728
PRO
0
190
Things You Thought You Didn’t Need To Care About That Have a Big Impact On Your Job
hollycummins
0
260
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
670
登壇は dynamic! な営みである / speech is dynamic
da1chi
0
360
O Que É e Como Funciona o PHP-FPM?
marcelgsantos
0
210
チームの境界をブチ抜いていけ
tokai235
0
230
Android16 Migration Stories ~Building a Pattern for Android OS upgrades~
reoandroider
0
140
Featured
See All Featured
Six Lessons from altMBA
skipperchong
29
4k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Automating Front-end Workflow
addyosmani
1371
200k
A Modern Web Designer's Workflow
chriscoyier
697
190k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
A better future with KSS
kneath
239
18k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Balancing Empowerment & Direction
lara
5
700
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
Transcript
CircleCI 2.0 ฃಆه @yasuhiroki
Rails (ॳΊͯ) + CircleCI (ॳΊͯ) ΤϯδχΞͷฃಆه
ୈҰষ CircleCI 1.0 ͷ͜ͱΕΔ
CircleCI ͕ࣦഊ͍ͯ͠Δ
bundle install Ͱࣦഊ͍ͯ͠Δ
ͲΜͳॲཧΛ࣮ߦ͍ͯ͠ΔͷͩΖ͏ʁ
Կઃఆ͍ͯ͠ͳ͍
CircleCI 1.0 ͷΈ • CircleCIͱͷ࿈ܞΛࢼͦ͏ͱ͍ͯͨ͠Β͍͠ • ઌߦͯ͠ Android Λࢼ͍ͯͨ͠ •
CircleCI 1.0 ࣌ OOM ͰΑ͘ࢮ͵ • ຊ֨తͳ࿈ܞ৲ࠐΈ͍ͯͨ͠
CircleCI 1.0 ͷ͜ͱΕΔ • OOM ͰΑ͘ࢮ͵ͷ 1.0 ·Ͱ • CircleCI
1.0 ͷࠒʹ࠾༻ΛΜͰ͍ͨͳΒɺ CircleCI 2.0 ผͱͯ͠ݕ౼͢͠
ୈೋষ .circleci/config.yml
CircleCI ͱྑ͘ͳΓ͍ͨ
CircleCI ͱྑ͘ͳΓ͍ͨ
ॆ࣮ͷυΩϡϝϯτ
ࢥ͍͍ͭͨ͜ͱ͙͢ࢼ͢
શͯࢼ͢ʢͭΓͰ༡Ϳʣ
ͻͨ͢Βࢼ͢
ϏϧυࣦഊͷΑ͋͘ΔݪҼ • ઃఆϑΝΠϧͷߏจΤϥʔ • bundle install • XXXXX: command not
found git push ͢Δલʹؾ͖͘
खݩͰݕূͰ͖Δ CircleCI CLI
ެࣜͷྫ͕ͨ͘͞Μ͋Δ
CircleCI 2.0 ͱ࿈ܞྃ
ୈࡾষ ΑΓ͘
ͬͱྑ͘Ͱ͖Δ
docker-compose • ։ൃ Mac ͕ͩຊ൪αʔό Linux Mac Ͱ Linux
ͷಈ࡞֬ೝ͕͔ͨͬͨ͠ • ͔ͤͬ͘ docker-compose Λ࡞ͬͨͷͰɺ CircleCI Ͱ͏Α͏ʹ͍ͯͨ͠
CircleCI 2.0 Ͱ docker-compose Λ͏ʹ • ͬ͘͞ͱಈ͔͢ͳΒ `machine: true` Ϟʔυ
• docker ίϚϯυॳΊ͔Βೖ͍ͬͯΔ • docker-compose wget ͢Δ͚ͩ • खݩͰ͏ͷͱಉ͡ײ֮Ͱ͑Δ
CircleCI 2.0 ͷ docker image Ͱ docker-compose Λ͏ͱʁ • ϋϚϦϙΠϯτ͕ଟ͍
• Alpine Πϝʔδͩͱ wget ͚ͨͩ͠Ͱಈ͔ͳ͍ • docker daemon ͕Ͳ͜Ͱಈ͍͍ͯΔͷ͔ҙ͓ࣝͯ͘͠ ඞཁ͕͋Δ • ίϯςφͷ docker όʔδϣϯ͕৽ͯ͘͠ɺ docker daemon ผͰಈ͍͍ͯͯόʔδϣϯ͕ݹ͍
machine: true Ͱμϝʁ • ॳظىಈ͕͍ • ඞཁͳπʔϧΛࣗͰΠϯετʔϧ͠ͳ͚Ε ͳΒͳ͍ • yaml
ϑΝΠϧ͕ଠΔ
machine: true Ͱμϝʁ • Note: There is an overhead for
provisioning a machine executor and use of the machine key may require additional fees in a future pricing update. - https://circleci.com/docs/2.0/docker- compose/ • কདྷɺ՝ۚରʹͳΔ͔͠Εͳ͍
docker-compose ΛΊΔ
Docker ΠϝʔδΛ༻ҙ • CircleCIͰϏϧυ͢Δઐ༻ͷDockerΠϝʔδ Λ༻ҙ͢Δ • docker-compose Ͱ༻͢Δ DockerΠϝʔδͰྑ͍ͷͰ͍ճ͢
ܶతվળ
࣍ষ ͦͯ͠ DevOps …
ࣗݾհ
@yasuhiroki • Yasuhiro Kiyota @yasuhiroki • Certified Jenkins Engineer •
AWS ͷ DevOps ͬΆ͍ۀͯ͠·͢
A10 Lab inc. • ΤϯδχΞืूதͰ͢ʂ • Android, iOS, RoR, AWS
• ҰॹʹࣗಈԽΛ͢͢ΊΔ͕ؒཉ͍͠Ͱ͢ • https://a10lab.com/recruit/ • https://www.wantedly.com/companies/a10lab/projects
͓͠·͍