시리즈 순서
1. CodeCommit 사용하기
2. CodeBuild 사용하기
3. CodeDeploy 사용하기
4.CodePipeline 사용하기
즉 AWS 서비스를 이용해서 CICD를 구축하는 것이 이번 시리즈의 목표이다.
AWS CodeCommit이란 무엇인가?
AWS CodeCommit은 프라이빗 Git 리포지토리를 호스팅하는 안전하고 확장성이 뛰어난 관리형 소스 제어 서비스입니다. 이 서비스를 사용하면 여러 팀이 기여 데이터를 전송 및 유휴 상태로 암호화하여 협업 방식으로 코드 작업을 안전하게 수행할 수 있습니다. CodeCommit를 사용하면 사용자가 자체 소스 제어 시스템을 운영하거나 인프라 규모 조정을 염려할 필요가 없습니다. CodeCommit을 사용하여 코드부터 바이너리까지 모든 사항을 저장할 수 있습니다. Git의 스탠더드 기능을 지원하므로 기존 Git 기반 툴과 원활하게 작동합니다.
1. IAM 그룹 및 사용자 만들기
먼저 IAM으로 들어가서 사용자 그룹 생성을 클릭한다.
그 이후 AWSCodeCommitFullAccess 권한을 가진 사용자 그룹을 생성한다.
CodeCommit은 5명까지는 무료로 사용할 수 있다.
그 이후 이 그룹을 이용할 사용자를 만들어 준다. 사용자 이름을 작성한 후 AWS 자격 증명 유형을 액세스 키와 콘솔 비밀번호 둘 다 사용할 수 있게 설정해 준다.
그 이후 권한 설정을 그룹에 사용자 추가를 클릭한 후 방금 만든 CodeCommit 그룹을 클릭한다.
그 후 생성한 계정의 액세스 ID와 시크릿 액세스 ID를 잘 보관하려면 .csv 파일로 다운로드 해야 한다.
2. SSH 키 생성
codecommit은 ssh키를 통해서 git과 연동하기 떄문에 ssh키가 필요하다.
git bash를 킨다.
그 이후 자신의 .ssh 키가 위치한 폴더로 이동한다.
이 컴퓨터 환경의 경우 C -> 사용자 -> User에 위치해 있었다.
그 다음 ssh-keygen 명령어를 입력해 ssh 키를 만들어 주었다.
그 후 hyeok.pem 이라는 pem키를 만들었고 passpharse는 비밀번호를 지정하는 것인데 지정하지 않아도 설정에는 문제가 없어 지정하지 않았다.
그 이후 방금 만든 사용자인 codecommit을 클릭한 후 보안자격 증명을 누르면 SSH 퍼블릭 키 업로드가 존재한다.
여기에 퍼블릭 키를 업로드 한다.
방금 생성한 .ssh 폴더에 가면 내가 만든 pem 파일과 .pub 파일이 존재한다. .pub 파일을 메모장으로 열어 복사한 후 입력한다.
그 다음 git bash에 vi config를 입력해준다.
만약 config 파일이 없더라도 생성이 되니 걱정하지 말자
Host git-codecommit.*.amazonaws.com User 위에서 복사한 SSH 키 ID IdentityFile ~/.ssh/자신이 생성한 pem 파일 |
그 후 위 표처럼 작성한 후 저장하면 된다.
그리고 아래처럼 명령어를 입력을 해보면 successfully가 뜬다. 그렇다면 제대로 설정이 성공한 것임을 알 수 있다.
ssh git-codecommit.ap-northeast-2.amazonaws.com |
3. 리포지토리 생성 및 연동
다시 CodeCommit으로 돌아온 후 리포지토리 생성을 누른다.
이름을 생성하고 설명 및 태그는 선택사항으로 추가하고 싶으면추가하면 된다.
그 후 생성된 리포지토리를 누른 다음 연결 방식을 SSH로 설정한다.
그 후 자신의 OS를 클릭하면 리포지토리를 복제하는 방법이 나온다.
그 후 리포지토리와 연동할 폴더를 생성한다.
그 후 방금 만든 폴더로 들어간 이후 git 리포지토리 주소를 복사한 후 엔터를 눌러 연동시켜준다.
그 후 생성된 폴더로 들어가 보면 (master)로 뜨는 것을 확인할 수 있다.
그 후 git의 commit이 제대로 되는지 확인해보기 위해서 codecommit 폴더 내에 hello.txt 파일을 만들었다.
그 후 git add . 을 통해서 codecommit 폴더 내 모든 파일을 업로드 해 두었고
git commit -m 을 통해서 test hello라는 설명을 넣었다.
그 다음 git push를 통해서 CodeCommit 리포지토리로 업로드를 완료했다.
그 후 CodeCommit의 내가 만든 레포지토리에 들어가보면 hello.txt가 잘 올라간 것을 확인할 수 있다.
출처
https://cumulus.tistory.com/10
'[AWS] > CICD' 카테고리의 다른 글
[AWS] CI/CD, Pipeline 세미나 실습 (1) | 2022.10.13 |
---|---|
[AWS] CICD 시작하기 (0) | 2022.10.06 |
[AWS][CICD] 4. CodePipeline 사용하기 (0) | 2022.08.19 |
[AWS][CICD] 3. CodeDeploy 사용하기 (0) | 2022.08.19 |
[AWS][CICD] 2. CodeBuild 사용하기 (0) | 2022.08.16 |
댓글