Submit Search
CodeBuildを身近にするためのはじめの一歩
3 likes
9,582 views
淳
淳 千葉
CodeBuildを始めるにあたり気になる疑問をまとめました
Internet
Read more
1 of 33
Download now
Download to read offline
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
More Related Content
PDF
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Amazon Web Services Japan
PDF
20200303 AWS Black Belt Online Seminar AWS Cloud Development Kit (CDK)
Amazon Web Services Japan
PDF
20180509 AWS Black Belt Online Seminar Amazon GuardDuty
Amazon Web Services Japan
PDF
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
Amazon Web Services Japan
PDF
20190806 AWS Black Belt Online Seminar AWS Glue
Amazon Web Services Japan
PDF
20200826 AWS Black Belt Online Seminar AWS CloudFormation
Amazon Web Services Japan
PDF
20200422 AWS Black Belt Online Seminar Amazon Elastic Container Service (Amaz...
Amazon Web Services Japan
PDF
20200630 AWS Black Belt Online Seminar Amazon Cognito
Amazon Web Services Japan
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Amazon Web Services Japan
20200303 AWS Black Belt Online Seminar AWS Cloud Development Kit (CDK)
Amazon Web Services Japan
20180509 AWS Black Belt Online Seminar Amazon GuardDuty
Amazon Web Services Japan
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
Amazon Web Services Japan
20190806 AWS Black Belt Online Seminar AWS Glue
Amazon Web Services Japan
20200826 AWS Black Belt Online Seminar AWS CloudFormation
Amazon Web Services Japan
20200422 AWS Black Belt Online Seminar Amazon Elastic Container Service (Amaz...
Amazon Web Services Japan
20200630 AWS Black Belt Online Seminar Amazon Cognito
Amazon Web Services Japan
What's hot
(20)
PDF
20180704(20190520 Renewed) AWS Black Belt Online Seminar Amazon Elastic File ...
Amazon Web Services Japan
PDF
20190129 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
Amazon Web Services Japan
PDF
Infrastructure as Code (IaC) 談義 2022
Amazon Web Services Japan
PPTX
Containers + EC2 Spot: AWS Batch による大規模バッチ処理でのスポットインスタンス活用
Daisuke Miyamoto
PDF
20210526 AWS Expert Online マルチアカウント管理の基本
Amazon Web Services Japan
PPTX
DeNA の AWS アカウント管理とセキュリティ監査自動化
DeNA
PPTX
CloudFront経由でのCORS利用
Yuta Imai
PDF
20201028 AWS Black Belt Online Seminar Amazon CloudFront deep dive
Amazon Web Services Japan
PDF
AWS Black Belt Online Seminar 2017 AWS Shield
Amazon Web Services Japan
PDF
AWS Well-Architected Security とベストプラクティス
Amazon Web Services Japan
PDF
AWS Black Belt Online Seminar - Amazon Lightsail
Amazon Web Services Japan
PDF
20190326 AWS Black Belt Online Seminar Amazon CloudWatch
Amazon Web Services Japan
PDF
20200617 AWS Black Belt Online Seminar Amazon Athena
Amazon Web Services Japan
PDF
20180613 AWS Black Belt Online Seminar AWS Cloud9 入門
Amazon Web Services Japan
PDF
ここから始めるAWSセキュリティ
Amazon Web Services Japan
PDF
20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server
Amazon Web Services Japan
PDF
20200722 AWS Black Belt Online Seminar AWSアカウント シングルサインオンの設計と運用
Amazon Web Services Japan
PDF
20190320 AWS Black Belt Online Seminar Amazon EBS
Amazon Web Services Japan
PDF
20191002 AWS Black Belt Online Seminar Amazon EC2 Auto Scaling and AWS Auto S...
Amazon Web Services Japan
PDF
AWS Black Belt Online Seminar 2017 AWS Elastic Beanstalk
Amazon Web Services Japan
20180704(20190520 Renewed) AWS Black Belt Online Seminar Amazon Elastic File ...
Amazon Web Services Japan
20190129 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
Amazon Web Services Japan
Infrastructure as Code (IaC) 談義 2022
Amazon Web Services Japan
Containers + EC2 Spot: AWS Batch による大規模バッチ処理でのスポットインスタンス活用
Daisuke Miyamoto
20210526 AWS Expert Online マルチアカウント管理の基本
Amazon Web Services Japan
DeNA の AWS アカウント管理とセキュリティ監査自動化
DeNA
CloudFront経由でのCORS利用
Yuta Imai
20201028 AWS Black Belt Online Seminar Amazon CloudFront deep dive
Amazon Web Services Japan
AWS Black Belt Online Seminar 2017 AWS Shield
Amazon Web Services Japan
AWS Well-Architected Security とベストプラクティス
Amazon Web Services Japan
AWS Black Belt Online Seminar - Amazon Lightsail
Amazon Web Services Japan
20190326 AWS Black Belt Online Seminar Amazon CloudWatch
Amazon Web Services Japan
20200617 AWS Black Belt Online Seminar Amazon Athena
Amazon Web Services Japan
20180613 AWS Black Belt Online Seminar AWS Cloud9 入門
Amazon Web Services Japan
ここから始めるAWSセキュリティ
Amazon Web Services Japan
20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server
Amazon Web Services Japan
20200722 AWS Black Belt Online Seminar AWSアカウント シングルサインオンの設計と運用
Amazon Web Services Japan
20190320 AWS Black Belt Online Seminar Amazon EBS
Amazon Web Services Japan
20191002 AWS Black Belt Online Seminar Amazon EC2 Auto Scaling and AWS Auto S...
Amazon Web Services Japan
AWS Black Belt Online Seminar 2017 AWS Elastic Beanstalk
Amazon Web Services Japan
Ad
Viewers also liked
(12)
PDF
AWS サービスアップデートまとめ re:Invent 2017 直前編
Amazon Web Services Japan
PPTX
Docker study for beginner in My Company 2017/10/19
TearTheSky
PDF
会社に Github導入した話
Yutaka Kinjyo
PDF
AWSクラウドデータストレージ総論
都元ダイスケ Miyamoto
PPTX
【Sgt2016】Agile人材の評価とキャリアプラン
Ryota Inaba
PPTX
Sql server 2017 からはじめる graph データベース
Oda Shinsuke
PDF
AWS運用における最適パターンの徹底活用
JustSystems Corporation
PDF
はじめてのコンテナーDocker & Windows & Linux
Kazushi Kamegawa
PDF
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
Koichiro Matsuoka
PPTX
Redmine4時代のプラグイン開発 redmine.tokyo #13
Sho Douhashi
PDF
AWS AI Solutions
Amazon Web Services Japan
PPTX
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
Carol Smith
AWS サービスアップデートまとめ re:Invent 2017 直前編
Amazon Web Services Japan
Docker study for beginner in My Company 2017/10/19
TearTheSky
会社に Github導入した話
Yutaka Kinjyo
AWSクラウドデータストレージ総論
都元ダイスケ Miyamoto
【Sgt2016】Agile人材の評価とキャリアプラン
Ryota Inaba
Sql server 2017 からはじめる graph データベース
Oda Shinsuke
AWS運用における最適パターンの徹底活用
JustSystems Corporation
はじめてのコンテナーDocker & Windows & Linux
Kazushi Kamegawa
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
Koichiro Matsuoka
Redmine4時代のプラグイン開発 redmine.tokyo #13
Sho Douhashi
AWS AI Solutions
Amazon Web Services Japan
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
Carol Smith
Ad
Similar to CodeBuildを身近にするためのはじめの一歩
(20)
PDF
20170809 AWS code series
Atsushi Fukui
PDF
AWS Black Belt Tech シリーズ 2015 - AWS CodeCommit & AWS CodePipeline & AWS CodeD...
Amazon Web Services Japan
PDF
CodePipeline入門
ryota koyama
PDF
JAWS-UG Meets Windows (JAWS Days 2017)
Amazon Web Services Japan
PDF
Application Deployment on AWS
Eiji Shinohara
PDF
Gaming cicd-pipeline gaming-technight-2
Amazon Web Services Japan
PDF
ECS-CLI in Action
Ryo Nakamaru
PDF
オンプレを少しずつコンテナ化する
Kenkichi Okazaki
PDF
Introduction of aws-cli
Masaaki HIROSE
PDF
AWS Black Belt Techシリーズ AWS Command Line Interface
Amazon Web Services Japan
PDF
Windows 開発者のための Dev&Ops on AWS
Amazon Web Services Japan
PPTX
【AWS×Deployment】TechTalk #5
幸夫 茅根
PDF
AWS CLI and CLOUDIAN HyperStore
CLOUDIAN KK
PPTX
CodeCommit/CodeDeploy/CodePipeline サービスアップデート(2016年10月)
Amazon Web Services Japan
PDF
AWS as code_and_test
Serverworks Co.,Ltd.
PDF
CloudFormation Getting Started with YAML
Yukitaka Ohmura
PDF
20130310 jaws tokai2013
Yuto Ogi
PDF
当社のawsへの取組
Mercari Inc.
PDF
Programming AWS with Perl at YAPC::Asia 2013
Yasuhiro Horiuchi
PDF
Jaws−横浜ハンズオンーCloudFormation 1/3
Yasuhiro Araki, Ph.D
20170809 AWS code series
Atsushi Fukui
AWS Black Belt Tech シリーズ 2015 - AWS CodeCommit & AWS CodePipeline & AWS CodeD...
Amazon Web Services Japan
CodePipeline入門
ryota koyama
JAWS-UG Meets Windows (JAWS Days 2017)
Amazon Web Services Japan
Application Deployment on AWS
Eiji Shinohara
Gaming cicd-pipeline gaming-technight-2
Amazon Web Services Japan
ECS-CLI in Action
Ryo Nakamaru
オンプレを少しずつコンテナ化する
Kenkichi Okazaki
Introduction of aws-cli
Masaaki HIROSE
AWS Black Belt Techシリーズ AWS Command Line Interface
Amazon Web Services Japan
Windows 開発者のための Dev&Ops on AWS
Amazon Web Services Japan
【AWS×Deployment】TechTalk #5
幸夫 茅根
AWS CLI and CLOUDIAN HyperStore
CLOUDIAN KK
CodeCommit/CodeDeploy/CodePipeline サービスアップデート(2016年10月)
Amazon Web Services Japan
AWS as code_and_test
Serverworks Co.,Ltd.
CloudFormation Getting Started with YAML
Yukitaka Ohmura
20130310 jaws tokai2013
Yuto Ogi
当社のawsへの取組
Mercari Inc.
Programming AWS with Perl at YAPC::Asia 2013
Yasuhiro Horiuchi
Jaws−横浜ハンズオンーCloudFormation 1/3
Yasuhiro Araki, Ph.D
More from 淳 千葉
(11)
PDF
devio2020_ユーザー体験向上するためにAWSサポートチームでやってる10のことの
淳 千葉
PDF
Well-Architected フレームワーク概要
淳 千葉
PDF
AWS Resource Access Manager(RAM)によるマルチアカウン戦略
淳 千葉
PDF
Lambda EdgeとALB認証を導入した話
淳 千葉
PDF
ECSの大型アップデートが来たよ!
淳 千葉
PDF
GitHubとクラスメソッド勉強会資料_DevOpsとAWS
淳 千葉
PPTX
Premier night3 devopsことはじめ
淳 千葉
PPTX
re:Growth athena
淳 千葉
PPTX
CloudWatch Eventを使ったamiの削除
淳 千葉
PPTX
CloudWatch Eventsを使ったECSのAutoScaling
淳 千葉
PPTX
短期間で大規模なシンクラ環境を用意した話
淳 千葉
devio2020_ユーザー体験向上するためにAWSサポートチームでやってる10のことの
淳 千葉
Well-Architected フレームワーク概要
淳 千葉
AWS Resource Access Manager(RAM)によるマルチアカウン戦略
淳 千葉
Lambda EdgeとALB認証を導入した話
淳 千葉
ECSの大型アップデートが来たよ!
淳 千葉
GitHubとクラスメソッド勉強会資料_DevOpsとAWS
淳 千葉
Premier night3 devopsことはじめ
淳 千葉
re:Growth athena
淳 千葉
CloudWatch Eventを使ったamiの削除
淳 千葉
CloudWatch Eventsを使ったECSのAutoScaling
淳 千葉
短期間で大規模なシンクラ環境を用意した話
淳 千葉
CodeBuildを身近にするためのはじめの一歩
1.
AWS CodeBuildを身近にするための はじめの一歩
2.
自己紹介 会社:クラスメソッド株式会社AWS事業部 名前:千葉 淳 好きなこと:仲間と家族とAmazon はまっていること:自転車(ツール・ド・ちば参戦。2日で200km走 った) 2
3.
今日伝えたいこと CodeBuildを身近に! さくっと使える! 覚えること少ない! 3
4.
CodeBuildの位置付け 4
5.
CodeBuild3行まとめ GitHub/CodeCommit/Bitbucket/S3から ファイルを取得 し 指定した
コマンド を 好きな Dockerコンテナ上で実行 する 5
6.
気になること いろいろ 6
7.
CodeBuild対応言語は? Dockerコンテナ上で動くものすべて AWSドキュメントでサンプルが用意されているもは C++、Go、Slaca、Java/Maven Node.js、Python、Ruby .Net Core in
Linux Docker サンプルはこちらから 7
8.
利用ケースサンプル Dockerコンテナイメージを作成しECRへプッシュ GitHubのプルリクをトリガーにビルド AWS Con gを利用してCodeBuildの変更をトラッキング ビルドの完了通知 ビルド後にCodeDeployを使ってEC2へデプロイ SAMを使ったデプロイ EBへのデプロイ サンプルはこちらから 8
9.
コマンド指定方法は? buildspec.ymlを書く ソースのトップに置く 以上、それだけ! 9
10.
buildspec.ymlの書き方は①? version: 0.2 env: variables: key: "value"
# 環境変数を指定 parameter-store: key: "value" #Systems Managerから取得し、値は暗号化できる phases: install: # パッケージインストール commands: - command pre_build: # ビルド前処理 commands: - command 10
11.
buildspec.ymlの書き方は②? build: # ビルド/テスト commands: -
command post_build: # アーカイブ化(ZipやJarなど)、ECRへのプッシュ commands: - command artifacts: files: # S3へアップするファイルを指定 - location 11
12.
環境変数の指定方法3つ buildspec.ymlのvariables システム共通の環境変数を指定 buildspec.ymlのparameter-store 暗号化したいパラメータを指定(キーなど) CodeBuildプロジェクトの設定 環境別の環境変数を指定(test/stg/prdとか) 12
13.
指定できるコンテナは? AWSで用意されているもの OS:Ubuntu、Amazon Linux 対応:Android/Docker/Golang/Java/Node.js/Python Ruby/.Net Core 詳細はこちら カスタマイズしたコンテナも利用できる DockerHub ECR 13
14.
CodeBuild内でプロセス起動できる? 例えば、Apache起動してcrulでlocalhost:80アクセス 答え: できる テストが捗りそう 14
15.
apache起動してcurlでリクエスト取得できた phases: install: commands: - echo install
httpd - apt-get update -y - apt-get install -y apache2 curl pre_build: commands: - echo start httpd - /etc/init.d/apache2 restart build: commands: - echo curl localhost - curl localhost:80 15
16.
コンテナからインターネット接続でき る? 例えば、RSS取得して表示するとか 答え: できる 実はビルド以外にも使える!? 16
17.
取得結果 17
18.
buildspec.yml version: 0.2 phases: install: commands: - echo
install - pip install feedparser build: commands: - echo start get-devio-rss.py - python get-devio-rss.py 18
19.
get-devio-rss.py import feedparser RSS_URL =
"https://feed.classmethod.jp/blog/daily.rss" result = feedparser.parse(RSS_URL) for entry in result['entries']: print("title:", entry.title) print("link: ", entry.link) 19
20.
実行トリガーは何指定できる? CloudWatch Events 時間やAWSサービスのAPIをトリガーに実行 ただしLambdaやCodePipeline経由で実行 CodePipeline ビルド以外のデプロイプロセスまでのフローを定義 GitHub pushやプルリクをトリガーにビルド実行 即時実行 20
21.
指定できるソースは? GitHub CodeCommit Bitbucket※注意:CodePipeline利用時は未対応 S3 21
22.
ブランチも指定できるの? 答え: できる ビルド開始時にブランチ名とバージョンを指定 22
23.
実行ログはどうやってみる? Codebuildの画面(最後の10000行を表示) CloudWatch Logs(全行のログ) 23
24.
Build完了後に通知できる? 答え: できる 1. buildspec.yml内でSNSへpublishする行を追加 version:
0.1 environment_variables: plaintext: AWS_DEFAULT_REGION: "region-ID" SNS_TOPIC_ARN: "arn:aws:sns:region-ID:account-ID:topic-name" phases: post_build: commands: - echo Build completed on `date` - aws sns publish --topic-arn $SNS_TOPIC_ARN --subject 'AWS CodeBuild - Build Co 24
25.
2. CodeBuildで利用するIAMロールに権限を追加 ### BEGIN
ADDING STATEMENT HERE ### { "Effect": "Allow", "Resource": [ "*" ], "Action": [ "sns:SendMessage", "sns:Publish" ] }, ### END ADDING STATEMENT HERE ### 参考 25
26.
ビルド環境のスペックと料金 以下の3タイプから選択。料金は分単位。 タイプ メモ リ (GB) vCPU ディスク 容量(GB) ビルド1分あたり の料金(USD) build.general1.small 3 2
64 0.005 build.general1.medium 7 4 128 0.010 build.general1.large 15 8 128 0.020 参考 26
27.
料金例 build.general1.small 1ヶ月100回のビルド 1ビルド5分 ビルド時間(分) = 100
回のビルド* 5 分= 500 分 ビルドの月額= 500 分* $0.005 = $2.5 参考 27
28.
制限事項 主なデフォルトの制限 ビルドタイムアウト時間:5~480分(8 時間) 同時ビルド実行数:20 詳細はこちら 28
29.
デモ 29
30.
デモ 1. Apacheを起動して、curlでアクセス(ブランチ名:master) 2. Developers.IOのRSSを取得する(ブランチ名:get-rss) 30
31.
まとめ 31
32.
まとめ CodeBuildでは 任意のDockerコンテナで 任意のコマンドを実行し 処理を行うことができる 技術的ハードルは低く、簡単に利用できる もっと身近に! 32
33.
おしまい 33
Download