오늘은 gitlab-ci로 ec2에 jar를 배포하기 위해 필요한 절차인 SSH 키를 생성하고 gitlab과 ec2에 세팅하는 방법에 대해 알아보겠습니다.
1. SSH 키 생성
ssh 키를 생성하기 위해서는 다음과 같은 명령어를 ~/.ssh 디렉터리 안에서 실행하면 됩니다.
ssh-keygen -t rsa -b 4096 -C "여러분의이메일주소"
이 명령을 실행하고 나면 ~/.ssh 안에 두 개의 파일이 생성되었을 것입니다.
id_rsa
id_rsa.pub
2. SSH private 키 git lab 등록
이 중 id_rsa를 내용을 복사하여 깃랩의 환경변수에 등록합니다. id_rsa의 내용을 cat id_rsa, vi id_rsa 등의 방식으로 읽어보면 -----BEGIN OPENSSH PRIVATE KEY-----로 부터 시작하여 -----END OPENSSH PRIVATE KEY-----로 끝나는 암호같은 내용이 있을 텐데, 해당 내용을 포함하여 전체 복사합니다.
레포지토리에서 Settings > CI/CD > Variables를 들어가시면 Add variable 버튼이 있습니다. 여기에 SSH_PRIVATE_KEY 변수를 만들어서 위에서 복사한 OPENSSH PRIVATE KEY를 담아주면 됩니다.
3. SSH public 키 EC2 등록
이번에는 id_rsa.pub의 내용을 전체 복사합니다. 그 다음에 ec2에 접속하여 ~/.ssh/authorized_keys 맨 아래 줄에 복사한 내용을 붙여줍니다. 다음과 같은 명령을 수행하시면 됩니다.
echo "여러분이복사한id_rsa.pub내용" >> ~/.ssh/authorized_keys
이것으로 gitlab 서버가 ec2 서버에 ssh 접속할 수 있는 준비가 되었습니다.
끝.
'DevOps > git' 카테고리의 다른 글
[git] 단 하나의 커밋 존재할 때 커밋 취소하는 방법 (0) | 2023.10.17 |
---|---|
[git] 가장 최근 커밋 메시지 수정하기 (0) | 2023.10.11 |
[gitlab] 레포지토리 디폴트 브랜치 설정하는 방법 (0) | 2023.09.26 |
[git] merge와 rebase 차이 정리 (0) | 2023.09.19 |
[git] .DS_Store 파일은 뭘까? (0) | 2023.09.14 |
[git] master 브랜치로 merge하기 (0) | 2023.06.21 |
[git] feature 브랜치 생명 주기(life cycle) 정리 (0) | 2023.06.20 |
[git] 리모트 브랜치와 로컬 브랜치 커밋 비교하는 방법 (0) | 2023.06.14 |