EC2 내에서 NodeJs 웹서버를 실행시키면 문제없이 작동하나 젠킨스로 파일전송 후 명령어 실행을 통해 웹서버를 실행시키면 나오는 에러

 

 

Jenkins에서 빌드 후 웹서버에 배포와 동시에 nodeJs 웹서버를 실행할 때 버전 이슈로 생기는 에러로 확인

ubuntu 사용자로 NodeJs LTS 버전인 20.11.1을 설치하였으나 root 계정은 12.29 버전으로 버전이 다르게 설치된 문제로 인해 첫 구동 시 root 사용자의 NodeJs 버전으로 실행되는 걸로 추측됨.

 

해결법

sudo apt-get --fix-broken install
sudo apt-get remove --purge nodejs npm
sudo apt-get clean
sudo apt-get autoremove
sudo apt-get install nodejs
sudo apt-get install nodejs --fix-missing
sudo apt-get update && apt-get upgrade
sudo apt install npm
sudo npm install -g n
sudo n lts
sudo n 20.11.1  [원하는 버전]

 

root 사용자로 변경 후 순서대로 실행하여 의존성 문제 해결 및 깨끗하게 지운 후 node 패키지 관리자를 통해 원하는 버전 설치

'Jenkins' 카테고리의 다른 글

Jenkins ssh 파일 전송 실패  (0) 2024.03.16