Node.js   发布时间:2022-04-24  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了node.js – 在Vagrant框中安装NVM / NodeJs / EmberJS大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有各种各样的乐趣.

最初的问题是终端需要在安装NVM后重新启动,以便我可以使用.bashrc设置重新初始化然后安装NodeJS – 所以我的想法是我将构建一个已经安装了NVM的基本盒.这样终端就已经初始化了NVM的东西.

是这样的……显然使用Vagrant包装一个baseBox会忽略/ home / vagrant文​​件夹中的所有内容. ARRRRRRRGGGGHHHHH!

真的吗?!-1-酮

有人有运气吗?将NVM安装在流浪盒内?甚至没有sudo的NodeJ?这是一个可怕的兔子洞,我想出去!

解决方法

我建议你回到 shell配置策略,我也已经通过这个地狱,但绝对可行.
经过大量的谷歌搜索后,我发现有两个非常含糊的文档设置需要它才能工作:

首先,也是最重要的部分是你需要在config.vm.provider块上使用这一行在VirtualBox实例上创建符号链接,而这个NVM不起作用(查看here):

config.vm.provider "virtualBox" do |vb|

  # (...)

  vb.customize ["setexTradata",:id,"VBoxInternal2/SharedFoldersEnableSymlinksCreate/vagrant","1"]
end

接下来,您必须将配置脚本分为两部分,一部分将以普通的apt / git /以及root用户身份运行…而另一部分将作为认的’vagrant’用户运行:

$rootScript = <<SCRIPT
  # some rooty stuff (just don't forget to include git and curl herE)
SCRIPT

## This is the script that will install nvm as the default 'vagrant' user
$userScript = <<SCRIPT
  cd /home/vagrant

  # Installing nvm
  wget -qO- https://raw.github.com/creationix/nvm/master/install.sh | sh

  # This enables NVM without a logout/login
  export NVM_DIR="/home/vagrant/.nvm"
  [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"  # This loads nvm

  # Install a node and alias
  nvm install 0.10.33
  nvm alias default 0.10.33

  # You can also install other stuff here
  npm install -g bower ember-cli
SCRIPT

最后,您需要告诉vagrant仅使用用户权限运行第二个脚本(几乎完全没有记录here):

config.vm.provision "sHell",inline: $rootScript
config.vm.provision "sHell",inline: $userScript,privileged: false

那应该做.不漂亮,但它的工作原理.

看看这个working gist,祝你好运!

大佬总结

以上是大佬教程为你收集整理的node.js – 在Vagrant框中安装NVM / NodeJs / EmberJS全部内容,希望文章能够帮你解决node.js – 在Vagrant框中安装NVM / NodeJs / EmberJS所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。