Node.js 설치
sudo curl -sL <https://deb.nodesource.com/setup_18.x> | sudo -E bash -
sudo apt-get install -y nodejs
노드 18 버전을 실행하기 위해서는 glibc 2.28 버전 이상이 필요한데, 우분투 18.04 버전에서는 glibc 2.27 버전을 제공하기 때문에 우분투 20.04로 OS 업그레이드를 진행했다.
<aside> ℹ️ glibc GNU C Library. C 또는 C++ 언어로 작성된 프로그램에게 다양한 라이브러리를 제공한다. C#, Java, Perl, Python, Ruby 등 많은 프로그래밍 언어는 간접적으로 GNU C 라이브러리를 사용한다.
</aside>
sudo apt update
sudo apt upgrade
sudo apt dist-upgrade
sudo apt autoremove
sudo do-release-upgrade
LTS 버전인 node 18 버전을 사용하기 위해 ubuntu를 20.04 버전으로 업그레이드 했다.
server-side에 pm2 설치 및 세팅
npm i -g pm2
pm2 startup
sudo env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 startup systemd -u action --hp /home/action
systemctl enable pm2-action
nginx 같은 서비스는 unit 파일을 갖고 있어서 systemctl nginx
같은 명령을 실행할 수 있다.
반면, pm2는 unit 파일을 갖고 있지 않다.
sudo env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 startup systemd -u action --hp /home/action
: pm2 unit 파일 생성
systemctl enable pm2-action
: 배포 서버 reboot 할 때 pm2-action 자동으로 실행