
CodeBuild は、フルマネージドのビルドサービスです。
コンテナ上の Build Environment(ビルド環境) で、Buildspec(ビルド仕様書)(buildspec.yml) に基づいて依存関係の取得、ビルド、テスト、成果物の生成を実行します。この設定は Build Project(ビルドプロジェクト) として定義され、ソースコードは Source Provider(ソースプロバイダ)(CodeCommit/GitHub/S3など)から取得します。
ビルド結果は Artifacts(アーティファクト) として S3(Simple Storage Service)や ECR(Elastic Container Registry) に保存でき、ビルド中の 環境変数、Compute types(コンピュートタイプ) の選択、Privileged Mode(特権モード) によるDockerビルド、VPC Configuration(VPC接続設定) によるプライベートリソースアクセスにも対応しています。また、IAM Role(サービスロール) を使用して、S3・ECR・Secrets ManagerなどのAWSサービスへ安全にアクセスできます。
さらに、CodePipeline と統合して自動ビルドをパイプライン化したり、CodeCommit でのコミットをトリガーに起動したり、CodeDeploy、ECS(Elastic Container Service)、EKS(Elastic Kubernetes Service)、Lambda などのデプロイ先サービスと連携させることで、再現性の高い CI/CD(継続的インテグレーション/継続的デリバリー) 環境を簡単に構築することができます。
ビルドログやメトリクスは CloudWatch で確認でき、成果物は S3/ECR に出力されます。
重要用語
ユースケース
- リスト1
 - リスト2
 - リスト3
 
ベストプラクティス
- リスト1
 - リスト2
 - リスト3
 
高可用性・冗長化
- リスト1
 - リスト2
 - リスト3
 
セキュリティ
- リスト1
 - リスト2
 - リスト3
 
運用・監視
- リスト1
 - リスト2
 - リスト3
 
デフォルトのリミット値
| リミット事項 | 上限数 | 
|---|---|
| 項目1 | 上限1 | 
| 項目2 | 上限2 | 
| 項目3 | 上限3 | 
| 項目4 | 上限4 | 
| 項目5 | 上限5 | 
AWS CLIのサンプルコード
vpc を作成
#include <stdio.h>
void main(void) {
  int i;
  for (i=0; i<10; i++)
    printf("%d\n", i);
vpc を作成
aaaaaaaaaaaaa
bbbbbbbbbbbbb
ccccccccccccc
Terraformのサンプルコード
vpc を作成
bbbbbbbbbbbbbbbbbbbbbbb
ddddddddddddddddddddddd
vpc を作成
xxxxxxxxxxxxxxxxxxxxxxx
yyyyyyyyyyyyyyyyyyyyyy
課金モデル
| 項目 | 内容 | 
|---|---|
| 項目1 | 内容1 | 
| 項目2 | 内容2 | 
| 項目3 | 内容3 | 
| 項目4 | 内容4 | 
| 項目5 | 内容5 |