Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Shohei kubo
Search
くぼ
July 13, 2025
120
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Shohei kubo
くぼ
July 13, 2025
Featured
See All Featured
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
520
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.7k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.2k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.8k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
560
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
730
How to build a perfect <img>
jonoalderson
1
6.2k
Leo the Paperboy
mayatellez
10
2.4k
Practical Orchestrator
shlominoach
192
12k
[SF Ruby Conf 2025] Rails X
palkan
3
1.5k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.9k
Transcript
CDKでCICDパイプライン を構築して苦労した話 久保翔平
CI/CDとは • ソフトウェア開発におけるビルド、テスト、デプロイといった プロセスを自動化する仕組みのこと • CI/CDを導入することで、リリースの高速化やコード品質の担保、 人的コストの削減といった効果が期待できる。 AWSのCI/CDサービス AWS CodeBuild
AWS CodeCommit AWS CodeDeploy AWS CodePipeline
CDKで作成したCICDパイプライン • インフラ構築用パイプライン -AWS サービスの構築を担当 -インフラ用のCDKスタックごとに作成 • アプリイメージビルド用パイプライン -アプリのビルドを担当。 -アプリイメージごとに作成(front用、back用など)
インフラ構築用パイプライン Account A環境 B環境 A環境と同様の構成 AWS CodePipeline(V2) AWS CodeBuild (Diff)
AWS CodeCommit Developer 手動 承認 AWS CodeBuild (Deploy) インフラ資材 手動起動 Source Deploy 意図しない更新によりAWS環境が 破壊されるのを防ぐ
インフラ構築用パイプライン Account A環境 B環境 A環境と同様の構成 AWS CodePipeline(V2) AWS CodeBuild (Diff)
AWS CodeCommit Developer 手動 承認 AWS CodeBuild (Deploy) インフラ資材 手動起動 Source Deploy 意図しない更新によりAWS環境が 破壊されるのを防ぐ
アプリイメージビルド用パイプライン Account 共通環境 AWS CodePipeline(V2) AWS CodeCommit AWS CodeBuild AWS
CodeArtifact Amazon ECR Amazon EventBridge AWS CodeBuild AWS CodeCommit Source Test Build mainへのマージを トリガーに起動 コンテナイメージ パッケージ
苦労する前の私 • CDKは触っていたが CI/CD系の構築未経験 • buildspec? (呪文) • アプリ系の知識もあまりない
苦労したこと • buildspecとビルド環境変数 ※buildspec.ymlとは ⇒ビルド実行時に実行する コマンド群を記したファイル AWS CodeBuild App/CDK Source
buildspec.ymlを実行 ビルド環境変数 AWS_ACCOUNT_ID=XXX AWS_REGION=??? ECR_NAME=〇〇〇 buildspec.yml
苦労したこと • buildspecとビルド環境変数 ※buildspec.ymlとは ⇒ビルド実行時に実行する コマンド群を記したファイル AWS CodeBuild App/CDK Source
buildspec.ymlを実行 ビルド環境変数 AWS_ACCOUNT_ID=XXX AWS_REGION=??? ECR_NAME=〇〇〇 buildspec.yml 環境変数を適切に設定することで buildspecの再利用性UP!
苦労したこと • アプリ、コンテナへの理解不足 始めはMavenって何? Dockerfileってどう書けばいいの?状態 イメージ構築時にパッケージの依存関係 が原因でエラー
苦労した後の私 • CDKは触っていたが CI/CD系の構築未経験 • buildspec? (呪文) • アプリ系の知識もあまりない •
パイプラインの動き完璧! • buildspecも任せて! • アプリ側の知識も習得!
学び • 業務を通して、安全なパイプラインの構築手法について理解した • ビルド環境変数を適切に設定することでbuildspecの再利用性が 増す • CI/CD構築の構築業務を通してアプリやコンテナの知識も学ぶこ とができた