5. 로컬에서 Jenkins 실습

젠킨스에서 프로젝트 생성

아이템 이름을 적고 ‘Freestyle project’ 선택 후, ‘OK’

프로젝트 설정을 아래와 같이 진행한다.

잠시 멈춘 후, Jenkins 에서 ssh 키를 발급 받는다.

docker exec -it {컨테이너명} ssh-keygen 명령을 사용하여 외부에서 생성 요청한다.

dk@Chiptune ~ % docker exec -it jenkins-docker /bin/bash
OCI runtime exec failed: exec failed: unable to start container process: exec: "/bin/bash": stat /bin/bash: no such file or directory: unknown
dk@Chiptune ~ % docker exec -it jenkins-blueocean ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/var/jenkins_home/.ssh/id_rsa): 
Created directory '/var/jenkins_home/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /var/jenkins_home/.ssh/id_rsa
Your public key has been saved in /var/jenkins_home/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:1586et6pQw5f0CsvcVIa1YLdlMqW0bGz9h0hWRQZ81o jenkins@76a028822060
The key's randomart image is:
+---[RSA 3072]----+
|             oo@B|
|            ..*+*|
|            .=+=E|
|           .o=+o+|
|        S . o=.= |
|         .. *.=.+|
|           = Bo o|
|            Bo.. |
|          .++=o  |
+----[SHA256]-----+

공개키가 생성된 것을 확인한다.

docker exec -it {컨테이너명} cat /var/jenkins_home/.ssh/id_rsa.pub 명령을 사용하여 외부에서 확인한다.

dk@Chiptune ~ % docker exec -it jenkins-blueocean cat /var/jenkins_home/.ssh/id_rsa.pub 
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCNrHrH3erqR6RJChq5JwydAOreKri35GlG0hQKPQaKRf3vXkrpJDRRgMK2AgCAivb8aMMxI7vhIPyqT6TMILP3pzpqS9AUBGrGfSv43Rd7zjp3riq6q6igRWwU+0/Y9USRmr/mw/n+aBkkya/fhVRZHMVYtGtvXnZktYqz/e2/4+DETFQLXDyiPBdlawZLq3efuH7wn0GObgXsx9RdslKqnmO5KGWFzjZl1eKDQvLfQblpdu9+X+jfPCJ2eo3C6SO0RsJWjxCzXYqu7VtFLqQcaB8PrGospLAaXx4R5wDlkf/3tDsQZ2Z4BLNtcRiZ/gD+pMq8pWLBDUvuRQDQMX9IIu78KFf6+OY6/RJeGQZxVrOFmpeIgOeupKtKiAmWbehlgUnDEz0QS3uLWkmrt9k7YqdCM1/oUgOVU2xOhQhNJDrPfs122JnxwGVas4nntDY5snu1FHpQuUiyUvq0J3T3V825eMA2B8b/U9HEx7ZHp30PWKKnj5fLOY8KE+Ws/CE= jenkins@76a028822060

개인키 생성을 확인한다.

docker exec -it {컨테이너명} cat /var/jenkins_home/.ssh/id_rsa 명령을 사용한다.

dk@Chiptune ~ % docker exec -it jenkins-blueocean cat /var/jenkins_home/.ssh/id_rsa
-----BEGIN OPENSSH PRIVATE KEY-----
b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAABlwAAAAdzc2gtcn
...

github 사이트에서 Jenkins에서 생성한 Public 키 값을 등록

레파지토리에서 ‘Settings’ → ‘Deploy Keys’ → ‘Add Deploy Key’ 를 통해 키 값을 등록한다.

아까 생성 했던 공개키 값을 등록 한다.

젠킨스에서 Credentials 를 등록한다. ‘Dashboard’ → ‘Jenkins 관리’ → ‘Credentials’ 로 접근한다.

전체 도메인에 적용하기 위해 ‘Global’을 클릭한다.

‘Add Credentials’ 을 클릭한다.

‘SSH Username with private key’ 를 선택하고, 아까 생성한 개인키를 직접 입력한다.

이전에 생성했던 프로젝트 아이템으로 들어가서, 왼쪽의 ‘구성’ 클릭.

아래와 같이 Credentials 옵션을 수정한다. 방금 생성한 인증을 적용하면 된다.


© 2024. Chiptune93 All rights reserved.