LoginSignup
0
1

More than 3 years have passed since last update.

AWS CodePipeline (CodeCommit + Codedeploy → EC2へデプロイ)

Posted at

AWS認定学習のためにチュートリアルをやってみたのでメモ。
実際にやってみた方がかなりイメージがわくと思います。

1.CodeCommit リポジトリの作成

image.png

以下の手順どおりに、git をインストールして、クローンを作成する。
image.png

$ sudo yum install git -y

$ git clone https://git-codecommit.ap-northeast-1.amazonaws.com/v1/repos/MyDemoRepo

$ mkdir tmp
$ cd tmp

2.CodeCommit リポジトリにサンプルコードを追加する

サンプルコードの準備

$ curl -o https://s3.amazonaws.com/aws-codedeploy-us-east-1/samples/latest/SampleApp_Linux.zip

$ unzip SampleApp_Linux.zip -d MyDemoRepo/

$ ls -la MyDemoRepo/

ステージング→コミット→プッシュします。

$ git add -A

$ git commit -m "test 1"

$ git push

3.デプロイするEC2インスタンスの準備

以下のとおりロールを作成する。

  • サービス:EC2
  • ロール名: EC2InstanceRole
  • ポリシー名:AmazonEC2RoleforAWSCodeDeploy

タグは、MyCodePipelineDemo とし、ユーザデータは以下のとおりにし、EC2インスタンスを作成する。

#!/bin/bash
yum -y update
yum install -y ruby
yum install -y aws-cli
cd /home/ec2-user
aws s3 cp s3://aws-codedeploy-us-east-2/latest/install . --region us-east-2
chmod +x ./install
./install auto

4.CodeDeploy で EC2インスタンスにデプロイする

以下のとおりロールを作成する。

  • サービス:CodeDeploy
  • ロール名: CodeDeployRole
  • ポリシー名:CodeDeploy

CodeDeploy アプリケーションを作成する。
image.png

CodeDeploy デプロイグループを作成する。
image.png
image.png

5.CodePipeline パイプラインを作成する

Step 1 パイプラインの設定を選択する

image.png

Step 2 ソースステージを追加する

image.png

Step 3 ビルドステージを追加する

今回ビルドはしないのでスキップします。

Step 4 デプロイステージを追加する

image.png

Step 5 レビュー

内容を確認し、「パイプラインの作成」をする。

成功した場合は、パブリック DNSにアクセスして表示されるか確認。
失敗した場合は、CodePipeline のトラブルシューティングをする。

5.CodeCommit リポジトリのコードを編集

index.html のファイルを適当に編集して、変更されるか確認してみます。

$ git commit -am "test2"
$ git push
0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1