我是Laravel的新手,我将为我的应用设置VM。我正在关注文档,我几乎完成了配置。我被困在这里。
我有Windows 8,我的Homestead.yaml文件如下所示:
authorize: E:/laravel_projects/Homestead/keys.pub
keys:
- ~/.ssh/id_rsa
folders:
- map: E:/laravel_projects
to: E:/vagrant/laravel_projects
sites:
- map: learn.app
to: E:/vagrant/laravel_projects/myfirstapp/public
variables:
- key: APP_ENV
value: local
当我在cmd中运行Vagrant时,错误是这样的。
E:/laravel_projects/Homestead/scripts/homestead.rb:26:in `read': No such file or directory - E:/laravel_projects/Homestead/keys.pub (Errno::ENOENT)
from E:/laravel_projects/Homestead/scripts/homestead.rb:26:in `block in configure'
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.6.5/plugins/kernel_v2/config/vm_provisioner.rb:72:in `call'
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.6.5/plugins/kernel_v2/config/vm_provisioner.rb:72:in `add_config'
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.6.5/plugins/kernel_v2/config/vm.rb:285:in `provision'
from E:/laravel_projects/Homestead/scripts/homestead.rb:24:in `configure'
from E:/laravel_projects/Homestead/Vagrantfile:9:in `block in <top (required)>'
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/config/v2/loader.rb:37:in `call'
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/config/v2/loader.rb:37:in `load'
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/config/loader.rb:103:in `block (2 levels) in load'
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/config/loader.rb:97:in `each'
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/config/loader.rb:97:in `block in load'
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/config/loader.rb:94:in `each'
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/config/loader.rb:94:in `load'
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/vagrantfile.rb:28:in `initialize'
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/environment.rb:614:in `new'
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/environment.rb:614:in `vagrantfile'
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/environment.rb:399:in `host'
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/environment.rb:198:in `block in action_runner'
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/runner.rb:33:in `call'
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/runner.rb:33:in `run'
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/environment.rb:386:in `hook'
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/environment.rb:596:in `unload'
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.6.5/bin/vagrant:177:in `ensure in <main>'
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.6.5/bin/vagrant:177:in `<main>'
我的项目路径是E:/ laravel_projects。
答案 0 :(得分:1)
应该是这样的:
folders:
- map: E:/laravel_projects
to: /home/vagrant/laravel_projects
- map: E:/laravel_projects/myfirstapp
to: /home/vagrant/laravel_projects/myfirstapp
sites:
- map: learn.app
to: /home/vagrant/laravel_projects/myfirstapp/public
你的Linux VM没有E盘。
答案 1 :(得分:1)
查看错误的第一行:
E:/lavel_projects/Homestead/scripts/homestead.rb:26:in"read':没有这样的文件或目录 - E:/lavel_projects/Homestead/keys.pub(Errno :: ENOENT)
显然关键不在那里。确保已生成SSH密钥并指定了正确的路径。
另外,在你的Homestead.yaml:
keys:
- ~/.ssh/id_rsa
这是私钥的路径,尽管它是* nix路径。您需要将其设置为Windows系统上生成的私钥的路径。