无法在Google云计算实例上运行PM2

时间:2019-06-11 00:18:32

标签: javascript ssh google-cloud-platform google-compute-engine gcloud

我跑步时

gcloud compute ssh user@instance-1

然后,当我进入ssh'd时,键入pm2,它会按预期方式打印出帮助消息。

如果我改为跑步

gcloud compute ssh user@instance-1 --command "pm2"

它将打印出bash: pm2: command not found

我以前已经安装了pm2(通过同时以root用户和npm install -g pm2身份运行user)。

这是怎么回事?

1 个答案:

答案 0 :(得分:2)

我的假设是,在第一个配方中,您将执行登录操作,这意味着将运行.profile和/或.bashrc脚本,这些脚本会修改PATH环境变量,以包含要运行的命令的位置({{1 }})。在第二个配方中,您提供pm2,我的假设是在不执行您的配置文件脚本的情况下,可执行文件被派生/执行(直接运行)。这导致找不到命令。也许尝试运行一个脚本(通过命令)来记录您的环境变量(例如--command),并查看它们与实际登录时的区别。

另一种解决方案是在命令中提供指向/bin/env的完整路径。