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
Fargate + Githubでお手軽CI/CD入門
Search
glassmonenkey
September 10, 2019
Technology
0
430
Fargate + Githubでお手軽CI/CD入門
glassmonenkey
September 10, 2019
Tweet
Share
More Decks by glassmonenkey
See All by glassmonenkey
encoding/json/v2で何が変わるか
nagano
14
4.3k
アジャイルテストの4象限で考える プロダクト開発の品質への向き合い方
nagano
1
2.4k
パッケージ管理ツール Ryeへの旅路
nagano
1
610
PHPerにとってのWebAssemblyの可能性
nagano
1
1.5k
PHPをブラウザで動かす技術
nagano
0
2.7k
PHPとWebAssembly
nagano
19
6.3k
アジャイルで始める データ分析基盤構築
nagano
1
3.6k
Goで始めるTDD
nagano
1
3k
Python製の姓名分割 ライブラリをGoに移植した話
nagano
0
1.7k
Other Decks in Technology
See All in Technology
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
17k
30万人の同時アクセスに耐えたい!新サービスの盤石なリリースを支える負荷試験 / SRE Kaigi 2026
genda
1
140
Digitization部 紹介資料
sansan33
PRO
1
6.8k
FinTech SREのAWSサービス活用/Leveraging AWS Services in FinTech SRE
maaaato
0
110
インフラエンジニア必見!Kubernetesを用いたクラウドネイティブ設計ポイント大全
daitak
0
280
(金融庁共催)第4回金融データ活用チャレンジ勉強会資料
takumimukaiyama
0
110
入社1ヶ月でデータパイプライン講座を作った話
waiwai2111
1
210
Mosaic AI Gatewayでコーディングエージェントを配るための運用Tips / JEDAI 2026 新春 Meetup! AIコーディング特集
genda
0
150
顧客との商談議事録をみんなで読んで顧客解像度を上げよう
shibayu36
0
120
小さく始めるBCP ― 多プロダクト環境で始める最初の一歩
kekke_n
1
310
SREじゃなかった僕らがenablingを通じて「SRE実践者」になるまでのリアル / SRE Kaigi 2026
aeonpeople
6
1.9k
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
10
73k
Featured
See All Featured
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.1k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
720
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
So, you think you're a good person
axbom
PRO
2
1.9k
RailsConf 2023
tenderlove
30
1.3k
YesSQL, Process and Tooling at Scale
rocio
174
15k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
59
42k
The SEO Collaboration Effect
kristinabergwall1
0
350
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
170
Building Applications with DynamoDB
mza
96
6.9k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
3.9k
Transcript
Fargate + Github actionで お手軽CI/CD入門 ニュースメディア テクノロジーグループ 永野 峻輔
氏名 : 永野峻輔 所属:ニュースメディア部 テクノロージグループ 業務:エキサイトニュース(PHP, JS, Python) Elastic Search
/ Sparkクラスタの構築中 趣味 : ゲーム(グラブル) 漫画など
https://www.excite.co.jp
今日の話す内容 - CI/CDとは - Github Action + Fargateの組み合わせのCI/CDができ たよって報告 ※
Dockerなどのコンテナの話が出てきますが本筋からそれ るので解説はしません。
今日の話す内容 - CI/CDとは - Github Action + Fargateの組み合わせのCI/CDがで きたよって報告
CI/CD 聞いたことありますか?
CI/CD やってますか?
http://moe-maxim.com/nannoseikamo-eraremasendeshita/
CI = 継続的インテグレーション CD = 継続的デリバリー
継続的インテグレーション 引用 https://www.redhat.com/ja/topics/devops/what-is-ci-cd • 自動ビルド • 自動(ユニット)テスト
継続的デリバリー 引用 https://www.redhat.com/ja/topics/devops/what-is-ci-cd • 自動デプロイ • カナリアリリース
なぜCI/CDが大事か • プロダクトの質の向上 • 心理的安全性の向上 • PDCAの仕組み化 開発作業の専念
今日の話す内容 - CI/CDについて - Github Action + Fargateの組み合わせのCI/CDがで きたよって報告 -
GithubActionとは - 採用したアプリケーションの要件 - Fargateとは - 構成図
CI/CDの選択肢 • AWS Code系 • Jenkins • Circle CI •
Github Action (new !!) …etc
Github Actionとは • GitHub上で動作するサーバレス(コンテナ)実行環境 • 昨年10月にリリースされた機能(現在もβ版) • 現在はymlベース(Azure パイプライン互換) •
CI/CDに注力するとのこと (issueの自動タグ付けとか出来ることはもっと広い) • .github/workflows ディレクトリにファイルを置くだけ https://help.github.com/ja/articles/about-github-actions
Github Action (自動デプロイ) name: deploy on: push: branches: - master
jobs: test: runs-on: ubuntu-18.04 steps: - uses: actions/checkout@v1 - name: run deploy run: cd ${GITHUB_WORKSPACE} && なんかデプロイ
Github Action (cron) name: schedule on: schedule: - cron: 0
* * * * jobs: test: runs-on: ubuntu-18.04 steps: - uses: actions/checkout@v1 - name: run deploy run: cd ${GITHUB_WORKSPACE} && なんか処理
Github Action 履歴
目的アプリケーションの要件 • VPC内で稼働するバッチアプリケーション ◦ cronで定期実行される • デプロイはscp&sshベース ◦ EMRを都度作成して破棄する
・マネージドなコンテナクラスタ環境 ・VPC外に存在(外部から叩きやすい) ・クラウドウォッチと組み合わせることでタスクを定期実行可能 ・サービス(常駐コンテナ)とタスク(使い捨てコンテナ)の使い分け可能 ・ecs cliがdocker-composeを流用できるので学習コストも低め 1.バッチ処理に必要なものをgithub.comからコンテナ化してFargateに配布 2.FargateからVPC内のアプリケーションへアプリケーションを配布 採用理由 方法
VPC デプロイサーバー郡 ① コンテナイメージをビ ルド &push ②pushしたイメージで タスクを更新 ③イメージをpull Fargate
ECR ④定期的なタスク実行 AWS
Github Action 感想 良かった点 Github上で完結(マトリックスビルドもOK) CIは簡単に書けた (※Dockerfileを書く程度の知識は必須) 個人開発で使えそう OSSのCIはこれ使ったものが増えそう。 課題点
キャッシュが無かったり痒いところには手が届かない?
Fargate 感想 良かった点 箱(クラスタ) を作れば 準備OKな感じが今っぽい ラムダほどアーキテクチャ変えなくて済む 要望 Fargateにデプロイしたコンテナに入る術がない? EKSのFargate化待ってます!!
まとめ • CI/CDは大事(小並感) • Github Action + Fargateで簡単なCI/CDは実現できた • 凝ったことをしないなら入門には良さげ
◦ CODE系シリーズ活用しよう!! • Fargateをうまく使うと踏み台として使えそう…?