EC2 배포 자동화 - (3)

TechXploreU·2023년 7월 17일
0
post-thumbnail

CodePipeline 생성

1. CodePipeline 생성

CodePipeline -> 파이프라인 -> 파이프라인 생성


파이프라인 이름은 test-app으로 설정하면 역할 이름이 자동으로 할당되는데 이걸 사용하면 됨

파이프라인 이름을 설정한 후
새 서비스 역할에 test-app-for-codepipeline 이름의 역할을 생성해준다.
codepipeline은 이전에 ec2, codedeploy처럼 IAM 사용 사례에 없기 때문에 여기서 생성하는게 더 편하다.

깃허브에 있는 코드를 ec2에 배포하기 위해서 소스 공급자를 Github로 설정해준다.
연결은 github token을 받아서 사용하고
원하는 레포지토리와 브랜치를 설정해준다.
깃허브에는 script 파일, appspec 파일, 실행시킬 파일이 필요하다.
예) https://github.com/huiji072/TechXploreU/tree/dev/ec2-cicd

빌드는 하지 않으므로 빌드 스테이지 건너뛰기를 선택해준다.

배포 공급자를 CodeDeploy로 설정해 준 후
EC2 배포 자동화 - (2) 에서 생성한 CodeDeploy에 애플리케이션과 배포 그룹을 설정해준다.

이 상태로 돌리면 CodeDeploy 에러가 발생한다.
아직 설정을 다 하지 못해서이다.

보안그룹에 role을 추가해야 한다.
보안 그룹 test-app-for-codedeploy, test-app-for-ec2에
AmazonS3ReadOnlyAccess

또한 엔드포인트를 설정해야 한다.
엔드포인트용 보안그룹을 생성해준다.

이름은 default-endpoint로 하였고
인바운드는 HTTP, HTTPS를 열어주었다.

엔드포인트를 생성해줘야 하는데


서비스 2개를 추가해줘야 한다.


vpc와 가용영역을 설정하고, 보안그룹을 설정해준다.


그러면 이렇게 엔드포인트가 두 개 생긴다.

파이프라인을 생성하면

이렇게 뜬다.

이때 에러가 발생한다면 보안그룹 인바운드를 모두 열어준다.
또는 ec2에 ruby를 설치해준다.

sudo yum install -y ruby

만약 이래도 안된다면 댓글로 에러사항을 알려주면 알려드리겠습니다.

주의사항

인스턴스 꼭 삭제하세요..
엔드포인트까지 삭제하세요... 과금 나올 수 있습니다.

profile
대학생과 함께하는 기술 탐험기

0개의 댓글