CI CD/JenKins

Jenkins(Mac m1) 34 node.js 배포(PM2)

svdjcuwg4638 2023. 7. 5. 10:42

node.js가 설치되어있다는 가정하에 진행

 

원하는 디렉토리에서 연습용 node.js받기

git clone https://github.com/joneconsulting/cicd-node-project.git

 

npm설치

npm install

 

node폴더 내부에서 실행시켜보기

➜  cicd-node-project git:(main) ✗ node app.js
Example app for CI/CD listening on port 8000

 

localhost:8000으로 접속하면 hello하고 undefinend 가보일것이다.

 

pm2 설치

npm install -g pm2

 

pm2시작

pm2 start app.js

pm2로 프로젝트를 시작하면 콘솔창 입력가능한상태로 가동되게된다 즉 백그라운드에서 진행되서 좋음

 

중지

pm2 stop 해당 idx를 입력

 

사용할 docker의 port정보

 

docker-server 접속

ssh root@localhost -p 10022

 

jenkins홈페이지에서 새 item생성

이름과 freestyle형식으로 생성

git 주소는 clone해온 git 주소 사용

 

ssh 설정

ssh server의 docker-server의 ip확인은

로컬 pc cmd에서 

docker network inspect bridge

docker-server의 ip 확인하여 system설정에 알맞게 기입

 

**로 모든 파일을 복사한다고 지정 .현재 디렉토리에

 

Exec command내용

docker build -t edowon0623/cicd-node-project -f Dockerfile . ;
docker run -d -p 8000:8000  edowon0623/cicd-node-project:latest ;

 

command바로밑의 고급버튼 눌러

빌드도중 오래걸려 시간이 오바되어 중지되는것을 방지하기위해 time out시간을 늘려줍니다 

10분으로 지정

 

저장하고 빌드 시작

끝났다면 localhost:8000으로 접속하여 확인