2. Github+ Jenkins+Docker+React.js
기존의 React.js에 Webpack을 적용하여 npm run build
시에 번들링이 되도록 세팅을 완료했다. 이제 사용하고 있는 VPS(Virtual Private Server)에 젠킨스를 설치해주어야 한다.
3. Linux에 젠킨스 설치하기
현재 개인 가상 서버의 메모리는 1G로 설정되어 있다. 하지만 젠킨스에서 빌드 배포가 이루어질 경우, 특히 도커까지 사용될 경우에는 메모리가 1기가 이상 사용되어 메모리를 초과할 수 있다. 이를 해결하기 위해 메모리 swap으로 하드 디스크 저장 용량 일부를 메모리에 할당할 수 있는 방법이 있지만, Hostinger VPS에서는 swap을 허용하지 않는다. (AWS EC2에서는 가능함)
젠킨스 설치하기
호스팅거 VPS를 사용중이기 때문에 해당 공식 사이트에서 제공하는 젠킨스 설치 방법을 참고하였다.
How to Install Jenkins on Ubuntu in 2023 (18.04, 20.04, and 22.04 Versions)
# linux Ubuntu
apt-get update
sudo apt-get install openjdk-11-jdk
# 젠킨스 리포지토리 키 가져오기
wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add -
sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'
sudo apt update
sudo apt install jenkins
젠킨스 설치 여부 확인
systemctl status jenkins
# 키 인식이 안될 경우
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 5BA31D57EF5975CA
- 기본적으로 젠킨스의 포트는 8080으로 지정되어 있다. 하지만 현재 8080포트는 사용중에 있기 때문에 8090으로 변경할 필요가 있다.
젠킨스 포트 변경하기
/etc/default/jenkins
파일 경로로 들어가야 한다. 현재 linux ubuntu 환경에서 젠킨스 설치를 진행하고 있지만 centOS일 경우에는 경로가 조금 다를 수도 있다.
vi /etc/default/jenkins
# 해당 파일에서 한 줄을 추가한다.
HTTP_PORT = 8090
# 다시 실행하기
sudo systemctl restart jenkins
방화벽 허용하기
젠킨스가 동작하고 있는 포트를 열어주지 않으면 아직 젠킨스에 접속할 수 없다. 본인이 사용하고 있는 방화벽에서 8090 포트를 열어주어야 한다.
# 현재 ufw 방화벽 사용중
## ufw 방화벽 상태 확인
ufw status
## 8090 포트 TCP, UDP 패킷 허용하기
ufw allow 8090
4. 젠킨스 실행해보기
젠킨스 설치가 완료되었다면 본인_IP:설정한_포트 를 통해 젠킨스에 접속할 수 있다. 접속 후 회원가입을 통해 계정을 생성한다.