반응형 CodeCommit7 AWS CodePipeLine ECS 배포 구성 AWS Code PipeLine을 사용하여 ECS에 배포하는 구성을 정리해본다. 어플리케이션은 nginx 이미지를 사용한다. 1. 소스 준비(CodeCommit) 배포 테스트를 위해 nginx용 테스트 컨테이너 소스를 작성한다. index.html 파일은 기본 index.hml 파일을 대체하기 위한 테스트용도이다. Docker Container Nginx Dockerfile은 다음과 같이 작성한다. FROM nginx:1.21.1 COPY ./index.html /usr/share/nginx/html/index.html EXPOSE 80 CodeBuild 사용을 위해 buildspec.yml 파일을 작성한다. env 항목의 AWS_ACCOUNT_ID는 각자의 ID로 등록한다. version: 0.2 en.. 2022. 8. 26. AWS CodePipeline 구성(CodeCommit, CodeBuild, CodeDeploy 활용) CodePipeline 어플리케이션 및 인프라 업데이트의 배포 파이프라인 자동화를 제공하는 완전 관리형 Continuous Delivery 서비스 코드 변경이 발생하는 경우 자동 빌드 -> 테스트 -> 배포 수행 AWS 서비스 및 3rd Party(Github, Jenkins 등) 툴과 통합 가능 커스텀 WorkFlow 모델링: AWS Lambda와 통합하여 파이프라인 어느 단계에서든 사용자 정의 함수 Trigger 가능 CodePipeline 주요 구성요소 Pipeline: WorkFlow 구성, 각 파이프라인 당 S3버킷에 폴더 생성 및 아티팩트 저장 됨 Stage: 수행 '작업' Action: 실행 단위로 지정된 순서 및 병렬로 수행, 모든 Action은 입력/출력 아티팩트를 가짐 Transitio.. 2022. 2. 28. MacOS STS CodeCommit 연계 에러(No password provided, authentication not supported) - Mac에서 STS 사용중에 CodeCommit의 소스를 pull 할 때 Login 창에서 아래와 같이 User, Password를 제대로 입력했음 - 소스는 pull정보를 제대로 받아온거 같은데 에러(No password provided) 메시지가 함께 뜸 - 처음에는 일단 무시하고 진행했는데 CodeCommit Push/Pull 할 때마다 계속 아래와 같은 에러(authentication not supported) 메시지가 뜸 - 찝찝한 마음에 이것저것 찾아봐서 해봤는데 이번에도 OS X keystore 문제없음, 해결방법은 아래와 같이 STS "Preferences > General > Security > Secure Storage" 에서 [OS X keystore 연동 체크박스를 해제] 후 Ap.. 2022. 2. 26. AWS CodeBuild로 빌드하기(SpringBoot, Maven) CodeBuild 클라우드의 완전 관리형 CI(Continuous Integration) 서비스: 소스코드 컴파일, 단위테스트, 빌드 파일 생성 빌드서버의 프로비저닝 및 운영/관리 불필요 Maven, Gradle 등 많이 사용되는 프로그래밍 언어 및 도구에 따라 사전 패키지된 빌드 환경(빌드 프로젝트)을 제공 빌드 수행 볼륨에 따라 자동 확장/축소 가능 및 사용한 빌드 시간만큼만 비용을 지불 CodeBuild 동작방식 Source Control - GitHub, CodeCommit, S3 등에서 소스 불러오기 Build Project - 소스코드위치, 빌드환경, 빌드명령, 빌드 결과 저장위치 등 빌드 실행 방식 정의 Build Environment - Build Project 기반으로 빌드 환경 생성 및.. 2022. 2. 26. AWS CodeCommit Migration 테스트(from Github) Github의 소스를 CodeCommit으로 마이그레이션 하는 방법 - CodeCommit메뉴에서 빈 리파지토리 생성 - 생성된 리파지토리의 URL을 복제하여 로컬로 Clone 실행 git clone https://git-codecommit.ap-northeast-2.amazonaws.com/v1/repos/springboot-test - Github에서 Migration 할 리파지토리의 URL 복제 - Github의 소스를 저장할 디렉토리 생성하고, git clone --mirror 수행 mkdir github-migration git clone --mirror https://github.com/xxxx/springboot-jsp.git github-migration - github-migration .. 2022. 2. 24. AWS CodeCommit Push 403 Unable to access(MAC) git config나 aws 계정 설정을 모두 해줬는데도 불구하고 AWS CodeCommit으로 Push 할 때 가끔 아래와 같은 403에러로 Push가 안될 때가 있다 fatal: unable to access 'https://git-codecommit.ap-northeast-2.amazonaws.com/v1/repos/xxxxxxx/': The requested URL returned error: 403 MAC OS 키체인과 뭔가 충돌때문이라고 하는데 이럴때는 키체인 > 로그인 > 암호(탭)에서 codecommit로 검색해서 모두 삭제한다 삭제 후 다시 Push하면 잘 동작한다 2022. 2. 24. AWS CodeCommit 시작하기 AWS CodeCommit AWS 클라우드 기반 Git 리파지토리 완전 관리형 소스 제어 서비스 : 프로비저닝, H/W구성 및 관리, S/W관리 불필요 KMS(Key Menagement Service)를 통해 데이터 자동암호화, IAM과 통합된 권한 관리 저장 가능한 리파지토리 크기 및 파일 형식 제한 없음 타 AWS서비스 및 다른 리파지토리와 함께 사용 가능 타 Git 기반 리파지토리 -> CodeCommit 마이그레이션 가능 CodeCommit 구성 1. IAM 계정 생성 - IAM 사용자 추가에서 "codeCommit-User"를 생성하고, AWS 자격증명유형에는 '프로그래밍 방식 엑세스' 선택 - 다음 권한설정에서 '기존정책 직접 연결'에서 AWSCodeCommitFullAccess 선택 - 자격.. 2022. 2. 24. 이전 1 다음 반응형