Github Action으로 배포시 npm: Command Not Found

NVM

nvm은 Node Version Manager의 줄임말로 Node.js의 버전을 쉽게 변경하고 관리할 수 있도록 도와주는 도구입니다.

이슈

만약 nvm으로 Node.js를 설치하고 실 서버에 Github Action을 통해 배포를 하는 경우 아래의 오류들이 발생할 수 있습니다.

1
2
3
4
5
6
7
8
9
bash: line x: node: command not found

bash: line x: npm: command not found

bash: line x: npx: command not found

bash: line x: pm2: command not found

bash: line x: yarn: command not found

해결 방법

아래와 같이 /usr/local/bin 디렉터리 아래에 심볼링 링크를 만들어 오류를 해결할 수 있습니다.

1
2
3
4
5
6
7
8
9
10
sudo ln -s "$NVM_DIR/versions/node/$(node 버전)/bin/node" "/usr/local/bin/node"
버전
sudo ln -s "$NVM_DIR/versions/node/$(node 버전)/bin/npm" "/usr/local/bin/npm"

sudo ln -s "$NVM_DIR/versions/node/$(node 버전)/bin/pm2" "/usr/local/bin/pm2"

sudo ln -s "$NVM_DIR/versions/node/$(node 버전)/bin/yarn" "/usr/local/bin/yarn"

sudo ln -s "$NVM_DIR/versions/node/$(node 버전)/bin/npx" "/usr/local/bin/npx"