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
590
CircleCI_Meetup3_LT
Yasuhiroki
September 15, 2017
Tweet
Share
More Decks by Yasuhiroki
See All by Yasuhiroki
自分に勉強させるには
yasuhiroki
1
420
Android Studio `Command+Shift+A`
yasuhiroki
0
350
シェルスクリプトをサーバーレスで cron したい
yasuhiroki
1
820
rails new コマンド
yasuhiroki
1
750
自動化を習慣化する
yasuhiroki
2
15k
GitHub Actions Parallel Testing
yasuhiroki
1
1.2k
circleci.vim
yasuhiroki
0
1.6k
ベンチャー企業がCircleCIを選んだ理由と活用方法
yasuhiroki
1
800
Rubyの正規表現を調べてみた
yasuhiroki
0
850
Other Decks in Programming
See All in Programming
Building an Application with TDD, DDD and Hexagonal Architecture - Isn't it a bit too much?
mufrid
0
250
AI時代のリアーキテクチャ戦略 / Re-architecture Strategy in the AI Era
dachi023
0
160
GitHub Copilot for Azureを使い倒したい
ymd65536
1
360
最速Green Tea 🍵 Garbage Collector
kuro_kurorrr
1
160
TypeScript エンジニアが Android 開発の世界に飛び込んだ話
yuisakamoto
4
210
SwiftDataのカスタムデータストアを試してみた
1mash0
0
150
今話題のMCPサーバーをFastAPIでサッと作ってみた
yuukis
0
160
Serving TUIs over SSH with Go
caarlos0
0
810
TypeScript製IaCツールのAWS CDKが様々な言語で実装できる理由 ~他言語変換の仕組み~ / cdk-language-transformation
gotok365
5
140
イベントソーシングとAIの親和性ー物語とLLMに理解できるデータ
tomohisa
0
130
エンジニア向けCursor勉強会 @ SmartHR
yukisnow1823
3
13k
CRUD から CQRS へ ~ 分離が可能にする柔軟性
tkawae
0
180
Featured
See All Featured
Done Done
chrislema
184
16k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
GitHub's CSS Performance
jonrohan
1031
460k
Typedesign – Prime Four
hannesfritz
41
2.6k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
12k
Being A Developer After 40
akosma
91
590k
BBQ
matthewcrist
88
9.6k
For a Future-Friendly Web
brad_frost
177
9.7k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Gamification - CAS2011
davidbonilla
81
5.3k
The Cost Of JavaScript in 2023
addyosmani
49
7.9k
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
͓͠·͍