2021. 5. 24. 17:19ㆍCentOS 7/Jenkins
- Jenkins용 OpenSSH key 생성
- GitHub에 public key 등록
- Jenkins에 Credential 설정 추가 (private key)
- 소스코드 연결 결과
1. Jenkins용 OpenSSH key 생성
1.1. jenkins 홈 디렉토리
Jenkins의 기본 홈 디렉토리는 /var/lib/jenkins
입니다.
Jenkins 홈 디렉토리에는 item, 빌드 기록과 같은 실행중 생성된 파일들이 축적됩니다.
그럼 jenkins 홈디렉토리로 이동해 봅시다.
cd /var/lib/jenkins
위의 이미지를 보면 알 수 있듯, Jenkins 프로그램에서 이용되는 파일 및 디렉토리들의
owner와 group은 jenkins
입니다.
1.2. .ssh 디렉토리 및 ssh 키 생성
jenkins가 이용할 OpenSSH key를 생성합시다.
jenkins 홈디렉토리에 .ssh 디렉토리를 생성한 후, 그 안에 OpenSSH key를 생성합니다.
sudo mkdir .ssh
sudo ssh-keygen -C jenkins@apple Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): ./.ssh/id_rsa
1.3. 파일 소유자 및 권한 변경
그리고, .ssh 디렉토리의 ssh키의 소유자 및 그룹을 jenkins로 변경하고, rwx(읽고쓰고실행) 권한은 소유자만 가질 수 있도록 변경합니다.
sudo chown -R jenkins: .ssh sudo chmod 700 .ssh sudo chmod 600 .ssh/id_rsa .ssh/id_rsa.pub
2. GitHub에 public key 등록
조금전에 생성한 id_rsa.pub 키를 복사하여 GitHub에 등록해봅시다.
sudo cat .ssh/id_rsa.pub
먼저 위의 출력값을 복사하고
GitHub 로그인 후, Settings에 들어가서
SSH key를 등록합니다.
SSH key등록을 마친 후, 아래와 같은 SSH 키가 추가된 것을 확인할 수 있습니다.
3. Jenkins에 Credential 설정 추가 (private key)
Credential을 추가합니다.
아래와 같이 SSH Username with private key 를 선택하여 설정하면 됩니다.
조금 전에 생성했던 id_rsa
비밀키를 위에 입력하면 됩니다.
4. 소스코드 연결 결과
만일, 정상적으로 등록이 되었으며, 연결된 GitHub가 접근할 수 있는 유효한 Repository URL을 입력할 경우, 아래와 같이 에러 문구 없이 연결됩니다.
+++
- GitHub SSH and GPG keys 설정
'CentOS 7 > Jenkins' 카테고리의 다른 글
[Jenkins] 6. Publish Over SSH 플러그인을 이용한 원격서버 배포 (1) | 2021.05.27 |
---|---|
[Jenkins] 4. Build 성공 후 앱 자동 배포하기 (0) | 2020.08.19 |
[Jenkins] 3. GitHub hook을 이용한 Spring Boot 웹애플리케이션 빌드 자동화 (0) | 2020.07.14 |
[Jenkins] 2. Jenkins에 환경변수(Global Tool Configuration) 설정하기 (0) | 2020.07.13 |
[Jenkins] 1. CentOS 7 환경에 Jenkins 설치하기 (0) | 2020.07.13 |