AWS CodeCommit CodeDeploy CodePipeline 自動デプロイ


1. CodeDeploy用IAMロールを作る
2. EC2インスタンス用IAMロールを作る
3. 2で作ったIAMロールをEC2インスタンスに割り当てる
4. CodeDeployアプリケーションの作成
5. EC2にCodeDeployエージェントインストール

CodeDeploy用IAMロールを作る


ロールの作成 

AWSサービス 選択

ユースケースの選択=> CodeDeploy



次のステップ:アクセス権限

AWSCodeDeployRoleを追加

タグの追加 → 特になし


ロールの作成

EC2インスタンス用IAMロールを作る

上記と同じように
ユースケースの選択 => EC2
Attach アクセス権限ポリシー=>AmazonEC2RoleforAWSCodeDeploy
タグ=> 特になし
を選択
ロール名はCodeDeploy-for_ec2にしました。

ロールの作成

CodeDeploy-for_ec2をEC2インスタンスに割り当てる

EC2の管理画面を開き、インスタンスを選択し、CodeComitの更新をしたいインスタンスの
アクション/インスタンスの設定/IAMロールの割り当てをクリック

そうすると、

で適用。

CodeDeployアプリケーションの作成

awsコンソールからCodeDeploy管理者画面にいく
左上の開発者用ツール /CodeDeployをクリック
アプリケーションの作成をクリック

アプリケーションの作成

次にデプロイグループを作成する。

サービスロールは1で作ったロールを選択
デプロイタイプ インプレース
環境設定 Amazon EC2 インスタンス

ロードバランサー チェック外す

EC2にCodeDeployエージェントインストール

インストール

ec2のターミナル
[ec2-user@ip-10-0-1-147 src]$ sudo yum -y update
[ec2-user@ip-10-0-1-147 src]$ sudo yum -y install ruby wget
[ec2-user@ip-10-0-1-147 src]$ wget https://aws-codedeploy-us-east-1.s3.amazonaws.com/latest/install
[ec2-user@ip-10-0-1-147 src]$ chmod +x ./install
[ec2-user@ip-10-0-1-147 src]$ sudo ./install auto

起動

ec2のターミナル
[ec2-user@ip-10-0-1-147 src]$ sudo service codedeploy-agent start
Starting codedeploy-agent:[ec2-user@ip-10-0-1-147 src]$  sudo chkconfig codedeploy-agent on
情報:'systemctl enable codedeploy-agent.service'へ転送しています