https://aws.amazon.com/ko/codepipeline/
AWS CodePipeline | 지속적 통합 및 지속적 전달
AWS CodePipeline은 특정한 요구에 맞게 손쉽게 확장할 수 있습니다. 사전 구축된 플러그인 또는 자체 사용자 지정 플러그인을 릴리스 프로세스 중 원하는 단계에 사용할 수 있습니다. 예를 들면 GitHu
aws.amazon.com
CodePipeline 이란?
AWS 의 완전관리형 지속적 전달 서비스 입니다.
소프트웨어를 릴리스하는 데 필요한 단계를 모델링, 시각화 및 자동화할 수 있게 도와 줍니다.
즉 , CI/CD 서비스로 빠르고 편리하게 어플리케이션을 빌드, 테스트, 배포 서비스를 자동화해 줍니다.
1. 유저 생성하기
Codepipeline 에 대한 유저를 생성 해 보겠습니다.
CodeCommitFullAccess 와 CodePipeline_FullAccess 를 지정 해 주었습니다.
유저 생성후 https git 크리덴셜을 생성 해 줍니다.
2. 레포지토리 생성하기
파이프라인을 위한 레포지토리도 생성 해 줍니다.
개발환경 도구인 cloud9 을 사용하였습니다.
사진과 같이 index.html / appspec.yml 파일을 설정하고 scripts 파일에는 명령어를 통해 3가지 파일을 설정 해 보겠습니다.
* 코드소스 상단 txt 파일 참고
cd ..
git add .
git status
git commit -m "pipeline"
git push
코드를 push 해 주면서 마무리 해 줍니다.
다음과 같이 리포지토리에 파일이 잘 올라왔습니다.
3. EC2 생성하기
파이프라인을 위한 ec2 생성입니다. 원하는 네트워크, 이미지,키를 설정 해 두고 특이점은 아래사항으로 설정 해 줍니다.
IAM 인스턴스 프로필의 이전 생성해둔 ec2-codedeploy-role 을 설정 해 줍니다.
유저 데이터도 다음과 같이 설정 해 주었습니다.
#!/bin/bash
yum update -y
yum install -y ruby
curl -O https://aws-codedeploy-ap-northeast-2.s3.amazonaws.com/latest/install
chmod +x ./install
sudo ./install auto
4. CodeDeploy
다음 Codedeploy 의 app 을 생성 해 줍니다.
이름과 플랫폼을 설정하고 생성 해 준뒤 배포 그룹도 함께 생성 해 줍니다.
배포 그룹의 옵션을 다음과 같이 설정 해 줍니다.
환경 설정에는 파이프라인을 위해 설정해둔 ec2 를 연결 해 줍니다.
나머지는 기본값으로 해 둔뒤 로드밸랜서는 비활성화 해 주었습니다.
5. CodePipeline
pipeline 을 생성 해 봅니다.
이름을 설정 해 주고 새로운 역할을 바로 생성 해 줍니다.
Source 옵션을 다음과 같이 레포지토리와 연결 해 줍니다.
build 는 이단계에서 skip 해 주었습니다.
deploy 단계에선 이전 생성 해 주었던 app 과 그룹들을 연결 시켜 줍니다.
코드 파이프라인에 대한 배포가 정상적으로 완료되면 다음과 같이 성공적으로 완료 됩니다.
배포를 확인 해보기 위해 파이프라인의 ec2 의 퍼블릭 ip 주소로 접속을 해 봅니다.
Html 에 변경사항이 있다면
git add .
git status
git commit -m "pipeline"
git push
코드 푸쉬를 진행 후 release change를 적용 해 줍니다.
'AWS - KOR' 카테고리의 다른 글
# 024) AWS CodeDeploy 사용하기 (0) | 2022.08.24 |
---|---|
# 023) AWS CodeBuild 사용하기 ( + S3 정적 웹사이트 ) (0) | 2022.08.24 |
# 022) AWS CodeCommit 사용하기 ( + Cloud9 ) (0) | 2022.08.24 |
# 021) 가상머신으로 쿠버네티스 (Kubernetes) 설치 2 (0) | 2022.08.01 |
# 020) AWS EC2 ( + Tomcat 서버 ) CI/CD 기초 (0) | 2022.07.31 |