Puppet에서 배포한 bash 스크립트의 PM2가 작동하지 않습니다.

Puppet에서 배포한 bash 스크립트의 PM2가 작동하지 않습니다.
#!/bin/bash

# install needed RPMS
yum -y install gcc-c++ git

# downlaod and compile node
wget https://nodejs.org/dist/v0.12.7/node-v0.12.7.tar.gz
tar -xvzf  node-v0.12.7.tar.gz
cd node-v0.12.7
./configure
make
sudo make install

# install pm2 via npm
/usr/local/bin/npm install pm2 -g

# start processes.json
cd /home/admin/Order-Management/
/usr/local/lib/node_modules/pm2/bin/pm2 start processes.json

위 스크립트를 로컬에서 실행하면 정상적으로 실행되지만 클라이언트 컴퓨터에서 puppet을 사용하여 실행하려고 하면 마지막 줄에서 다음 오류가 발생합니다.

    /usr/bin/env: node: No such file or directory

저는 RedHat 6 마스터와 RedHat 6 클라이언트를 사용하고 있습니다. 여기서 해결책을 봤어요 https://stackoverflow.com/questions/30281057/node-forever-usr-bin-env-node-no-such-file-or-director그러나 그것은 나에게 효과가 없습니다.

답변1

Puppet을 실행하는 동안 노드가 PATH에 없을 수 있습니다. 다음 스크립트를 사용해 보세요.

#!/bin/bash

# install needed RPMS
yum -y install gcc-c++ git

# downlaod and compile node
wget https://nodejs.org/dist/v0.12.7/node-v0.12.7.tar.gz
tar -xvzf  node-v0.12.7.tar.gz
cd node-v0.12.7
./configure
make
sudo make install

# install pm2 via npm
/usr/local/bin/node /usr/local/bin/npm install pm2 -g

# start processes.json
cd /home/admin/Order-Management/
/usr/local/bin/node /usr/local/lib/node_modules/pm2/bin/pm2 start processes.json

관련 정보