Vagrant shell配置无效

时间:2013-04-28 17:37:29

标签: vagrant

我一直在尝试使用vagrant在Windows上为Rails开发设置一个Ubuntu虚拟机。

我做的是首先创建一个“普通”虚拟机并通过SSH连接到它然后运行我需要的所有命令,例如sudo apt-get install x以确保它们工作(他们做了),然后再放入它们进入shell脚本。

当我尝试使用我所做的shell脚本运行vagrant时,它会出现一个非常长的错误消息,例如stdin:不是tty和其他同样神秘的错误消息。

我的流浪文件如下所示:

Vagrant.configure("2") do |config|

  config.vm.box = "precise32"
  config.vm.provision :shell, :path => "Vagrant.sh" 
  config.vm.network :forwarded_port, host: 3003, guest: 3000,  auto_correct: true

end

我的shell脚本在这里(因为它有点长,GitHub提供语法高亮): https://gist.github.com/leebrooks0/5477591

,控制台输出在这里: https://gist.github.com/leebrooks0/5477627

非常感谢任何帮助。


经过多次尝试后,我意识到甚至没有来自流浪文档(http://docs.vagrantup.com/v2/getting-started/provisioning.html)的演示脚本也能正常工作,这很奇怪,因为当我开始这项工作并试用它时,该脚本肯定能够正常工作。

1 个答案:

答案 0 :(得分:6)

/tmp/vagrant-shell: line 5: $'\r': command not found

第5行

echo 'Updating system packages...'

看起来像windows“回车/换行”\r\n vs unix“new line”\n

可能出现问题

考虑在vagrant文​​件中使用chef-solo选项,需要一点习惯厨师,但可能值得 - http://docs.vagrantup.com/v2/provisioning/chef_solo.html