[Ubuntu] AWS에서 젠킨스를 설치해보자!
프로젝트를 하며서 젠킨스와 도커를 이용하여 배포 파이프라인을 구축해보려고 한다....
해보자...!
우선 JDK를 다운받아주어야 한다.
Jenkins를 실행하려면 Java가 필요하다..!
sudo apt install openjdk-17-jdk
본인은 스프링부트를 배포해 보려고 하는데, JDK17버전을 사용하기로 팀원분들과 약속했기 때문에
17버전으로 다운받아 주었다.
젠킨스가 일부 자바 버전은 호환이 되지 않는다고 하는데 우선 17버전으로 다운로드 후에, 호환이 되지 않는다면 공홈페이지에서 가이드 하는대로 11버전을 다운받을 것이다.
curl -fsSL https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo tee \
/usr/share/keyrings/jenkins-keyring.asc > /dev/null
echo deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] \
https://pkg.jenkins.io/debian-stable binary/ | sudo tee \
/etc/apt/sources.list.d/jenkins.list > /dev/null
sudo apt-get update
sudo apt-get install jenkins
공홈에서 제시하는 대로 순서대로 진행해보자.
Curl
클라이언트에서 커맨드 라인이나 소스코드로 손 쉽게 웹 브라우저 처럼 활동할 수 있도록 해주는 기술(커맨드라인 Tool 혹은 라이브러리)
서버와 통신할 수 있는 커맨드 명령어 툴이다. 웹개발에 매우 많이 사용되고 있는 무료 오픈소스이다 curl의 특징으로는 다음과 같은 수 많은 프로토콜을 지원한다는 장점이 있다.
Tee
echo "hello" | tee OUTFILE
다음 명령을 실행하면 OUTFILE 에 hello 라는 내용이 기록된다.
따라서 공홈의 명령어는 jenkins의 키를 tee 이하의 경로에 적으라는 내용.
젠킨스가 서비스 부팅시 시작되도록 한다.
sudo systemctl enable jenkins
젠킨스 서비스를 시작한다.
sudo systemctl start jenkins
sudo systemctl status jenkins
activate 된 모습을 볼 수 있다.
이제 포트를 변경시켜주자.
sudo nano /etc/default/jenkins
스프링부트 서비스를 8080으로 하려고 하는데, 젠킨스의 기본포트는 8080이다.
따라서 본인은 9090으로 변경시켜 주었다.
서비스를 재시작 시켜주도록 하자.
sudo systemctl restart jenkins
본인의 Ec2 퍼블릭Ip주소:포트번호로 접속해주면 되는데....
아앗...안돼...
SSH연결이 되는것 보면 네트워크 문제는 아니고, 포트번호 문제라고 생각했다.
포트 번호 변경이 잘 된것같이 않아서 공홈을 참고하여 다시 변경하려고 했다.
그런데 edit을 하면 저장이 안되는 문제가 생겨서 다른 방법으로 변경시켜 주었다.
sudo vi /usr/lib/systemd/system/jenkins.service
요기부분의 포트를 변경시켜 주면 된다.
서비스 restart 후 다시 접속해보면
일단 포트문제는 해결...^^
음 혹시몰라 퍼블릭IP가 아니라 퍼블릭IPDNS로 연결했더니...
되네...?
이유는 일단 추후에 알아보도록 하자.