https://jawsug-container.connpass.com/event/60798/
GitHub + ECSで快適Review環境2017/07/21 JAWS-UGコンテナ支部 #92017/07/21 JAWS-UGコンテナ支部 #9
View Slide
天野太智@pataiji株式会社Speeeリードエンジニア開発基盤グループ 兼務好きなAWSのサービス: CloudFormation, SystemsManager(最近娘がパパっ子になってきて嬉しい)2017/07/21 JAWS-UGコンテナ支部 #9
webapp-revieeehttps://github.com/speee/webapp-revieee2017/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
既存ツールPaushttps://github.com/dtan4/pausDocker Swarmベースdocker-compose.ymlを用意してgitpushするとcontainerが立ち上がるDocker Swarmの管理が必要2017/07/21 JAWS-UGコンテナ支部 #9
ECSベースで実装しよう2017/07/21 JAWS-UGコンテナ支部 #9
実装面 (とツラみ)2017/07/21 JAWS-UGコンテナ支部 #9
EC2 1台NginxRuby on RailsECS + SpotFleetECR全体構成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
ワークフロー(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