들어가며
MSP 업무를 진행하면서, 엔지니어들의 반복적인 작업을 줄이고 수 많은 고객사를 관리하는 데 편리하도록 자동화 웹사이트를 구축했는데요,
혼자서 개발을 하고 build 하고 도커를 말아올리고 EKS에 배포하는 작업이 너무 번거롭고 힘들어서 같이 개발할 수 있으며 git push만 으로 자동 배포가 되는 CI/CD 환경을 구축했습니다.
아래는 TO-BE 구성도여서 Slack 알람 연동을 제외하고 참고해주시면 되겠습니다. Slack 연동은 추후에 다시 업데이트하겠습니다.
Code Commit 이란?
CodeCommit 프라이빗 Git 리포지토리를 호스팅하는 안전하고 확장 가능한 소스 관리형 서비스입니다.
주로, 오픈소스 프로젝트인 경우에는 Github나 Gitlab등을 많이 사용하는데요 AWS에서도 동일한 기능을
가진 저장소로 Code Commit 서비스를 제공합니다.
Github와는 다르게 저장소가 암호화되기 때문에 보안적인 측면에서도 우수합니다. 또한 특정 요청 수 밑으로는
무료이기 때문에 부담없이 사용이 가능합니다.
자세한 내용은 아래를 참고 부탁드립니다.
[1] https://docs.aws.amazon.com/ko_kr/codecommit/latest/userguide/welcome.html
[2] https://aws.amazon.com/ko/codecommit/pricing/
CodeCommit 설정하기
CodeCommit에 연결하는 방법은 여러가지가 있지만, 이번에는 Git 자격 증명을 사용하여 HTTPS 연결을 해보겠습니다.
IAM 계정을 생성합니다. 현재 사용하고 있는 User도 좋고 CodeCommit만을 사용 할 용도의 User를 사용하셔도 좋습니다.
보통 협업을 목표로 사용하는 서비스 기에 각 User마다 아래의 자격증명을 생성하는 것을 추천 드립니다.
사용자 보안 자격 증명 탭에서 AWS CodeCommit에 대한 HTTPS Git 자격 증명 - 자격증명 생성 버튼을 눌러 생성합니다.
자격 증명은 AccessKey와 같이 발급 받은 후 다시 복구 할 수 없으므로 자격 증명 다운로드 하여 관리하거나,
잘 기억하셔야 합니다.
우선적으로, Local 시스템에 Git이 설치 되어 있어야 하는데요, Git 설치를 위해서는 Git 다운로드와 같은 웹 사이트를 권장합니다.
Windows 와 Mac에 따라 설치 방법이 다르니 구분 하셔야 합니다.
위와 같이 리포지토리에서 URL 복제를 눌러 HTTPS 주소를 복사합니다.
Git clone 명령어를 사용해서 로컬 저장소와 연동을 할 수 있습니다.
아래는 my-demo-repo 라는 이름의 로컬 저장소로 복사할 수 있다는 내용인데요, 저희가 생성한 Repo를 복사하려면 아래와 같이 진행하시면 됩니다.
git clone https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo my-demo-repo
PS C:\Users\Projects> git clone https://git-codecommit.ap-northeast-2.amazonaws.com/v1/repos/Bespin_SREProject SREProject
Cloning into 'SREProject'...
remote: Counting objects: 375, done.
Receiving objects: 100% (375/375), 8.61 MiB | 5.18 MiB/s, done.
Resolving deltas: 100% (63/63), done.
PS C:\Users\Projects> cd .\SREProject\
PS C:\Users\Projects\SREProject>
처음 접속하는 경우 아래와 같이 리포지토리에 대한 사용자 이름과 암호를 묻는 메시지가 표시되는데요, 이때 이전에 저장해 두었던 자격증명의 사용자 이름과 비밀번호를 각각 넣어주시면 됩니다.
연결이 되면 SREProject라는 폴더 생성과 동시에 codecommit 주소에 대한 자격증명이 로컬에 등록되며 레퍼지토리 관리가 가능하게 됩니다.
관련 문서는 아래 링크를 참고해주세요.
https://docs.aws.amazon.com/ko_kr/codecommit/latest/userguide/getting-started.html
이로써, AWS CodeCommit 과의 연동은 완료되었습니다. 다음에는 ECR 접속 방법과 Jenkins 서버 초기 구성까지 알아보도록 하겠습니다.
감사합니다.
아티클이 유용했나요?
훌륭합니다!
피드백을 제공해 주셔서 감사합니다.
도움이 되지 못해 죄송합니다!
피드백을 제공해 주셔서 감사합니다.
피드백 전송
소중한 의견을 수렴하여 아티클을 개선하도록 노력하겠습니다.