AWS CodeDeploy命令未找到
问题描述:
尝试部署Node.js应用程序时,我在post_install.sh
AfterInstall脚本中收到错误npm: command not found
。什么是超级奇怪的是在我的BeforeInstall脚本我运行npm install -g pm2
,它工作得很好,没有任何错误。AWS CodeDeploy命令未找到
两者都作为ubuntu
用户运行。为什么这个命令在一个CodeDeploy脚本中工作并在另一个脚本中失败?
答
看起来我可以通过将以下内容添加到我的脚本文件来解决此问题。
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
希望这可以帮助别人。
添加npm可执行文件的完整路径。 –
@RamanSailopal我怎么找到?为什么我必须这样做呢? –
在命令行键入“whereis npm”,然后在脚本中添加完整路径,而不仅仅是npm。 –