vagrant引导:源~/.配置文件不工作

vagrant引导:源~/.配置文件不工作,vagrant,vagrant-provision,Vagrant,Vagrant Provision,所以我试图在vagrant中安装nvm和node,但似乎无法正常工作。 显然,我很难让它加载/读取nvm,因为nvm要求您重新加载您的终端~/.profile似乎不起作用 使用ubuntu/xenial64 这是我的bootstrap.sh文件 #install nvm cd ~ curl -sL https://raw.githubusercontent.com/creationix/nvm/v0.31.2/install.sh -o install_nvm.sh bash install_

所以我试图在vagrant中安装nvm和node,但似乎无法正常工作。 显然,我很难让它加载/读取nvm,因为nvm要求您重新加载您的终端<代码>~/.profile似乎不起作用

使用ubuntu/xenial64

这是我的bootstrap.sh文件

#install nvm
cd ~

curl -sL https://raw.githubusercontent.com/creationix/nvm/v0.31.2/install.sh -o install_nvm.sh
bash install_nvm.sh

#this command makes it so that you don't need to re-open the terminal for 'nvm' to be available
source ~/.profile

#use nvm to install node
nvm install 6.2.2
nvm use 6.2.2
我得到的错误(稍微修改以隐藏个人信息):

==>默认设置:在VM中检查来宾添加。。。
==>默认值:装载共享文件夹。。。
默认值:/installation\u data=>C:/work/
==>默认值:正在运行provisioner:shell。。。
默认值:运行:C:/Users/ahmed/AppData/Local/Temp/vagrant-shell20160703-8248-1c82peg.sh
==>默认值:=>将nvm从git下载到“/home/ubuntu/.nvm”
=>默认值:
==>默认值:克隆到“/home/ubuntu/.nvm”。。。
==>默认值:*(在v0.31.2时头部分离)
=>默认值:主
==>默认值:=>将源字符串附加到/home/ubuntu/.bashrc
==>默认值:=>关闭并重新打开终端以开始使用nvm
==>默认值:/tmp/vagrant shell:第11行:未找到nvm:命令
==>默认值:/tmp/vagrant shell:第12行:未找到nvm:命令
SSH命令以非零退出状态响应。流浪汉
假设这意味着命令失败。此命令的输出
应该在上面的日志中。请阅读输出以确定需要什么
出了问题。

不要选择采购
~/.profile
尝试以下方法:

echo "--- Installing Node.js ---"
git clone https://github.com/creationix/nvm.git /home/vagrant/.nvm && cd /home/vagrant/.nvm && git checkout `git describe --abbrev=0 --tags`
source /home/vagrant/.nvm/nvm.sh
nvm install 6.2.2
nvm use 6.2.2
n=$(which node);n=${n%/bin/node}; chmod -R 755 $n/bin/*; sudo cp -r $n/{bin,lib,share} /usr/local
echo $n

请参阅帖子。在透明盒上测试。似乎工作正常。

您不能从脚本中
source~/.profile
,因为它只适用于该脚本,而不适用于运行bootstrap.sh的shell。
source bootstrap.sh
会给你想要的结果吗?谢谢。此外,对于谷歌用户:
echo "--- Installing Node.js ---"
git clone https://github.com/creationix/nvm.git /home/vagrant/.nvm && cd /home/vagrant/.nvm && git checkout `git describe --abbrev=0 --tags`
source /home/vagrant/.nvm/nvm.sh
nvm install 6.2.2
nvm use 6.2.2
n=$(which node);n=${n%/bin/node}; chmod -R 755 $n/bin/*; sudo cp -r $n/{bin,lib,share} /usr/local
echo $n