AWS

AWS CodeCommit 사용해보기

Joon0464 2021. 7. 3. 14:15

CodeCommit이란?

우리가 흔히 사용하는 형상관리 도구인 Git이 있다. Git은 GitHub, GitLab, Atlassian, Bitbucket등을 Repository로 사용하여 소스코드를 관리한다. 이와 동일한 기능을 가진 저장소를 AWS에서 제공하는데 이것이 바로 CodeCommit이다.

 

CodeCommit의 특장점

GitHub와 다르게 저장소가 암호화되기 때문에 보안적인 측면에서 우수하다. 

또한 월 활성 접속계정 5개 이하, 계정 당 요청수가 2000개 이하인 경우에는 무료로 서비스 이용이 가능하다.

 

CodeCommit 사용해보기

https://cumulus.tistory.com/3

 

Git을 활용한 형상 관리 1편

1. Git 또는 cmder 설치 < 윈도우 git 설치 > https://git-scm.com/downloads 에서 설치 파일 다운로드 설치 파일을 실행하여 기본 값으로 설치해도 무방하다. < 윈도우 cmder 설치 > https://cmder.net/ 에서 설..

cumulus.tistory.com

로컬 PC에 Git-bash가 설치되어 있어야 하므로 관련 내용은 링크를 남기도록 하겠다.

 

1) CodeCommit을 사용할 계정 생성

IAM 콘솔에서 그룹 생성을 클릭한다.
권한 정책 연결탭에서 AWSCodeCommitFullAccess를 검색하여 선택하고 그룹을 생성한다.
다음과 같이 사용자 그룹이 생성된다.

 

사용자를 추가하기 위해 다음과 같은 경로로 클릭한다.
반드시 프로그래밍 방식 엑세스를 체크하고 나머지 설정은 입맛에 맞게 설정한다.
사용자를 이전에 생성한 CodeCommitFullAccess 그룹에 포함시킨다.
태그를 지정하고 다음으로 넘어간다.
검토를 마치고 사용자를 생성한다.
엑세스 키ID와 비밀 엑세스 키를 기억해야하므로 .csv 다운로드를 클릭하여 해당 키값들이 적혀있는 파일을 다운받는다.

2. SSH키 생성

codecommit은 ssh키를 통해 git과 연동되기 때문에 ssh키를 생성해야한다.

cmder에서 .ssh 경로로 이동한다.
ssh-keygen 명령어를 입력하면 공개키 및 비밀키 생성을 시작한다. 필자는 joon.pem으로 비밀키 이름을 지정한 모습이다. passphrase는 비밀번호를 지정하는 것인데 지정하지 않아도 설정에는 아무런 상관없다.

ssh-keygen -t rsa -b 4096 : 키 유형을 rsa로 지정하면서 길이를 4096비트로 지정할 수도 있다.

.ssh 내부에 joon.pem(비밀키), joon.pem.pub(공개키)가 생성되었으며 추가로 config 파일이 생성되었다. 만약 config 파일이 없다면 이후에 직접 생성할 것이므로 걱정하지 않아도 된다.

3. ssh 공개키 사용자에 등록

ssh키를 사용자에 등록하기 위해 IAM 콘솔에서 생성했던 사용자를 클릭한다.
보안 자격증명 탭에 SSH 퍼블릭 키 업로드를 클릭한다.
이와 같이 퍼블릭 키 업로드 팝업창이 뜨게된다.
키 값은 cmder에서 joon.pem.pub의 내용을 확인하면 볼 수 있다.
키 값을 복사 붙여넣기로 넣어주고 업로드한다.
다음과 같이 업로드 된 것을 볼 수 있다. 여기서 표시되는 SSH키 ID값을 복사한다.
cmder에서 config 설정을 열어준다.
위에서 복사했던 SSH키 ID값을 넣어주고 joon.pem 파일 경로를 반드시 위와 같이 지정한다. ~로 경로를 지정하면 해당 Config 파일이 윈도우에서 자동으로 사용자 폴더로 경로를 인식하게 된다. 설정을 마치고 저장한다.
ssh git-codecommit.ap-northeast-2.amazonaws.com 명령어를 입력해준다. 출력 문구가 위와 약간 다를 수 있지만 어쨋든 "You have successfully authenticated over SSH."가 출력되면 문제 없다.

4. 리포지토리 생성 및 연동

CodeCommit 콘솔로 들어가서 리포지토리 생성을 클릭한다.
위와 같이 원하는 값들을 입력하고 CodeGuru Reviewer 활성화 옵션은 원하면 선택하여 생성한다.
CodeGuru에 대한 아마존의 설명이다. 참고하면 좋을 거 같다.
리포지토리를 생성하면 Git과 연동하는 3가지 방법이 적혀있다. 여기서 우리는 SSH를 선택하고 4단계의 리포지토리 복제 명령어를 복사한다.
우선 리포지토리와 연동할 폴더를 생성하고 해당 폴더로 경로를 변경한 후에 복사했던 명령어를 입력하면 git 리포지토리 연동이 완료된다.
연동이 완료된 폴더로 이동해보면 위와 같이 연동이 된 것을 볼 수 있다.

5. 커밋 테스트

test.txt를 생성하고 커밋을 진행한 뒤에 리포지토리로 push를 해보았다.
joon-test 리포지토리를 확인해보면 test.txt가 push된 것을 볼 수 있다.

참고한 블로그 링크

https://twofootdog.tistory.com/33

 

AWS CodeCommit으로 소스코드 관리하기(Git & SSH)

이번 글에서는 AWS CodeCommit과 Git을 활용하여 소스코드를 관리하는 방법에 대해서 알아볼 것이다. 이 글의 순서는 다음과 같다. AWS CodeCommit이란? 실습 전 준비사항 IAM 계정 및 그룹 생성 AWS와 로컬

twofootdog.tistory.com

https://gracefullight.dev/2017/08/18/AWS-CodeCommit-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0/index.html

 

AWS CodeCommit 사용하기

AWS 에서 제공하는 Cloud Git Repository 인 CodeCommit 으로 소스코드를 관리해보자. 설정 공식 문서가 아주 잘 되어있다. 문서를 보고 시작해도 된다. Mac Windows IAM 유저 생성 IAM 에서 유저를 만든 뒤에 AWSC

gracefullight.dev

https://bysssss.tistory.com/126

 

AWS CodeCommit

1) 기본설정 1-1) 깃 HTTPS ID/PW 연결 사용할 IAM의 사용자에, '권한'에 "AWSCodeCommitFullAccess" 추가. 사용할 IAM의 사용자에, '보안 자격 증명'에 "AWS CodeCommit에 대한 HTTPS Git 자격 증명" 생성. CodeC..

bysssss.tistory.com

https://docs.aws.amazon.com/ko_kr/codecommit/latest/userguide/setting-up-ssh-windows.html#setting-up-ssh-windows-keys-windows

 

SSH 연결에 대한 설정 단계AWS CodeCommit윈도우의 저장소 - AWS CodeCommit

SSH 키 ID를 두 개 이상 업로드한 경우, 키가 업로드 날짜가 아니라 키 ID를 기준으로 영문자순으로 나열됩니다. 올바른 업로드 날짜와 연결된 키 ID를 복사했는지 확인하십시오.

docs.aws.amazon.com