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
GitHub+ ECSで快適Review環境
Search
pataiji
July 21, 2017
Programming
0
2.6k
GitHub+ ECSで快適Review環境
https://jawsug-container.connpass.com/event/60798/
pataiji
July 21, 2017
Tweet
Share
More Decks by pataiji
See All by pataiji
20190118_srelounge.pdf
pataiji
3
3.9k
CloudFormationで迎える優しい世界
pataiji
0
2.4k
OSS開発が業務にもたらす恩恵
pataiji
0
760
Itamaeで快適開発ライフ
pataiji
2
290
CloudMagick
pataiji
0
910
DevOpsの心
pataiji
0
98
イエウールのDevOpsっぽい話
pataiji
0
450
CloudMagick builder
pataiji
0
1.1k
RubyKaigi 2016 sponsored session by Speee inc.
pataiji
0
1.3k
Other Decks in Programming
See All in Programming
マイコンでもRustのtestがしたい/KernelVM Kansai 11
tnishinaga
1
920
Duke on CRaC with Jakarta EE
ivargrimstad
1
180
CursorとDevinが仲間!?AI駆動で新規プロダクト開発に挑んだ3ヶ月を振り返る / A Story of New Product Development with Cursor and Devin
rkaga
5
1.1k
開発者フレンドリーで顧客も満足?Platformの秘密
algoartis
0
230
一緒に働きたくなるプログラマの思想 #QiitaConference
mu_zaru
82
21k
エンジニアが挑む、限界までの越境
nealle
1
340
eBPF超入門「o11yに使える」とは (20250424_eBPF_o11y)
thousanda
1
120
Boast Code Party / RubyKaigi 2025 After Event
lemonade_37
0
110
事業KPIを基に価値の解像度を上げる
nealle
0
130
AIコーディングエージェントを 「使いこなす」ための実践知と現在地 in ログラス / How to Use AI Coding Agent in Loglass
rkaga
4
1.4k
Designing Your Organization's Test Pyramid ( #scrumniigata )
teyamagu
PRO
5
1.6k
Embracing Ruby magic
vinistock
2
270
Featured
See All Featured
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
13
850
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.4k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3k
Become a Pro
speakerdeck
PRO
28
5.3k
Mobile First: as difficult as doing things right
swwweet
223
9.6k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
KATA
mclloyd
29
14k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
Transcript
GitHub + ECS で快適Review 環境 2017/07/21 JAWS-UG コンテナ支部 #9 2017/07/21
JAWS-UG コンテナ支部 #9
天野太智 @pataiji 株式会社Speee リー ドエンジニア 開発基盤グルー プ 兼務 好きなAWS のサー
ビス: CloudFormation, Systems Manager ( 最近娘がパパっ子になってきて嬉しい) 2017/07/21 JAWS-UG コンテナ支部 #9
webapp-revieee https://github.com/speee/webapp-revieee 2017/07/21 JAWS-UG コンテナ支部 #9
動作イメー ジ GitHub にWebhook を登録するだけ PR 作ったら確認環境が立ち上がる 2017/07/21 JAWS-UG コンテナ支部
#9
背景 Review 環境の渋滞 多数の独立したプロダクト 既存ツー ル 2017/07/21 JAWS-UG コンテナ支部 #9
Review 環境の渋滞 Development / Staging / Production 複数のエンジニア / 案件
/ レビュアー 声掛け運用で解決 2017/07/21 JAWS-UG コンテナ支部 #9
多数の独立したプロダクト 社内に10 以上のプロダクト それぞれ独自の開発体制 全社で画一的な環境を用意するのは現 実的でない 2017/07/21 JAWS-UG コンテナ支部 #9
全社共通の Review 基盤が 求められている 2017/07/21 JAWS-UG コンテナ支部 #9
既存ツー ル Heroku Review Apps メンテナンスフリー 設定が圧倒的に楽 IP によるアクセス制限ができない (Enterprise
は可) ミドルウェアのバー ジョンが指定不可 2017/07/21 JAWS-UG コンテナ支部 #9
既存ツー ル Paus https://github.com/dtan4/paus Docker Swarm ベー ス docker-compose.yml を用意してgit
push するとcontainer が立ち上がる Docker Swarm の管理が必要 2017/07/21 JAWS-UG コンテナ支部 #9
ECS ベー スで実装しよう 2017/07/21 JAWS-UG コンテナ支部 #9
実装面 ( とツラみ) 2017/07/21 JAWS-UG コンテナ支部 #9
EC2 1 台 Nginx Ruby on Rails ECS + SpotFleet
ECR 全体構成 2017/07/21 JAWS-UG コンテナ支部 #9
ECS + SpotFleet 必要そうなリソー スをざっくり見積も って運用 落ちても大きな問題がない環境なので あまり気を使っていない 今後AutoScale するようにしていく
2017/07/21 JAWS-UG コンテナ支部 #9
PR 作成時のワー クフロー 2017/07/21 JAWS-UG コンテナ支部 #9
ブランチ指定してTask を実行 PR にhook して指定したブランチの最新のcommit をpull してきてTask を起動したい ECS はTaskDe
nition でImage を指定するのでTask 起動時にImage を変更することはできない 悩んだ結果 ENTRYPOINT で頑張ることに 漂うコレジャナイ感 2017/07/21 JAWS-UG コンテナ支部 #9
ブランチ指定してTask を実行 2017/07/21 JAWS-UG コンテナ支部 #9
ブランチ指定してTask を実行 2017/07/21 JAWS-UG コンテナ支部 #9
ワー クフロー(Review 環境アクセス時) 2017/07/21 JAWS-UG コンテナ支部 #9
ホストベー スルー ティング Task へのアクセスポー トは動的に変化 Nginx(OpenResty) + MySQL で動的にproxy
初回アクセス時のみMySQL にアクセスし以降はキ ャッシュ Paus はVulcand を使用しているそう 漂うガンバッテル感 2017/07/21 JAWS-UG コンテナ支部 #9
ホストベー スルー ティング 2017/07/21 JAWS-UG コンテナ支部 #9
ECS を選んで思うこと やりたいことを比較的簡単に実現することが できた クラスタ管理はほとんど考える必要がない ので考えることが少なく済んだ Task 起動時にImage のTag を変更したい...!
docker-compose.yml をAPI に投げられると嬉 しい 2017/07/21 JAWS-UG コンテナ支部 #9
最後に webapp-revieee はまだまだβ もう少しでCFn 一発で環境が立ち上がる状態にでき そう いい感じになったらブログ(http://tech.speee.jp/) とかで告知すると思います 使ってみてFB いただけると嬉しいです...!
2017/07/21 JAWS-UG コンテナ支部 #9
ありがとうございました 2017/07/21 JAWS-UG コンテナ支部 #9