无法在谷歌云计算实例上运行 pm2



当我跑步时

gcloud compute ssh user@instance-1

然后,当我被ssh'd时,我输入pm2,它会打印出一条帮助消息,正如预期的那样。

如果我改为运行

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

它打印出bash: pm2: command not found

我以前已经安装了pm2(通过以 root 用户和 user 身份运行 npm install -g pm2 以获得良好的措施(。

这是怎么回事?

我的假设是,在第一个配方中,您执行登录,这意味着运行您的 .profile 和/或 .bashrc 脚本,这会修改您的 PATH 环境变量以包含您希望运行的命令的位置(pm2(。 在第二个配方中,您提供--command我的假设是可执行文件正在分叉/执行(直接运行(,而无需执行您的配置文件脚本。 这会导致找不到该命令。 也许尝试运行一个脚本(通过命令(来记录您的环境变量(例如/bin/env(,看看它们与您实际登录时发现的内容有何不同。

另一种解决方案是在命令中提供pm2的完整路径。

最新更新