服务器确认过安装npm,但是github actions报了这个找不到npm的指令,查资料发现 main.yml中
部署到服务器
- name: Deploy
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.HOST }}
username: ${{ secrets.USERNAME }}
password: ${{ secrets.PASSWORD }}
port: ${{ secrets.PORT }}
script: |
cd /var/www/node/nuxtdemo
wget https://github.com/luopeihai/nuxt-actions-demo/releases/latest/download/release.tgz -O release.tgz
tar zxvf release.tgz
npm install --production
pm2 reload pm2.config.json
uses: appleboy/ssh-action@master 执行script时候是
sudo cd /var/www/...... npm install --production
在回到服务器sudo输入
sudo npm install --production
发现仍然是, npm: command not found
npm: command not found 原因: 服务端node环境 我是通过nvm 而nvm并不会把node环境安装到 /usr/local/bin/目录下,使得sudo找不到对应指令,最终创建软连接 解决
sudo ln -s "$NVM_DIR/versions/node/$(nvm version)/bin/node" "/usr/local/bin/node"
sudo ln -s "$NVM_DIR/versions/node/$(nvm version)/bin/npm" "/usr/local/bin/npm"
sudo ln -s "$NVM_DIR/versions/node/$(nvm version)/bin/pm2” "/usr/local/bin/pm2”