안녕하세요. 회사내 물리서버 교체로 인한 프론트,백엔드,QA 배포환경 작업을 진행함.
이참에 bitbucket -> github로 이동하자고 팀원 의견이 들어와 옮기기로함.
일단 회사내 물리서버 ssh연결후
cd /
sudo -u jenkins /bin/bash
jenkins bash쉘 접근
cd /var/lib/jenkins/.ssh
젠킨스 .ssh폴더로 이동
ssh-keygen -t rsa -f jenkins_key
정상적으로 키가 생성되었다.
해당 키는 아까 생성한 키파일에서 확인한다.
cat /var/lib/jenkins/.ssh/jenkins_key.pub
젠킨스에서 프로젝트 생성후
"구성"클릭하여 프로젝트 설정 준비
깃허브 프로젝트 체크후 HTTP 주소를 붙여넣는다.
소스 코드 관리에는 SSH 주소를 붙여 넣는다.
현재 Credentials -none- 이기때문에 오류가 발생한걸 볼 수 있다.
Add클릭해 추가하도록하자
cat /var/lib/jenkins/.ssh/jenkins_key
해당키를 사진과 같이 붙여넣는다.
주의사항 : -----BEGIN OPENSSH PRIVATE KEY----- 부터 -----END OPENSSH PRIVATE KEY----- 해당 문구도 전부 다 붙여 넣는다.
추가후 해당 키를 적용하면
오류가 사라지고 정상적으로 연결되었다.
TMI
혹시 위와 같은 방법으로도 연결이 되지 않는다면 방화벽을 체크해야한다.
도저히 오류 원인을 모르겠으면 서버 ssh접속후 ping github.com 입력한다. 만약 핑을 받아오지 못한다면 저희 회사와 같은 문제일 가능성이 크다.
문제 원인은 네트워크 캐싱때문인지 모르겠지만 외부에서 들어오는 포트가 전부 차단되어 있었기 때문에 연결이 되어있지 않았다.
서버 IP을 변경하여 해당 문제를 해결하였고 젠킨스와 연결도 잘되었다~~라는 이야기였다