缺少共享文件夹的主机路径:〜/ Code

时间:2015-02-17 09:01:46

标签: laravel vagrant virtualbox development-environment homestead

我想将laravel homestead用于我的开发计算机并成功安装了虚拟机和流浪者,但是当我运行vagrant up时出现此错误:

Bringing machine 'default' up with 'virtualbox' provider...
There are errors in the configuration of this machine. Please fix
the following errors and try again:

vm:
* The host path of the shared folder is missing: ~/Code

Homestead.yaml文件如下所示:

---
ip: "192.168.10.10"
memory: 2048
cpus: 1

authorize: ~/.ssh/id_rsa.pub

keys:
    - ~/.ssh/id_rsa

folders:
    - map: ~/Code
      to: /home/vagrant/Code

sites:
    - map: homestead.app
      to: /home/vagrant/Code/Laravel/public
      hhvm: true

databases:
    - homestead

variables:
    - key: APP_ENV
      value: local

这些是默认设置,但它们并非适用于我的机器 - 我甚至没有/home/vagrant文件夹,也没有~/Code我能看到的地方。我正在使用ubuntu 12.04 - 请您指出我应该如何配置我的设置,因为官方文档中我有点丢失。

5 个答案:

答案 0 :(得分:19)

在宅基地目录中,您必须运行命令bash init.sh

这将在您的主目录(Homestead.yaml)中生成after.sh文件(以及aliases~)。

如果您再次更改Homestead.yaml,则必须重新运行bash init.sh。它会要求覆盖,说是。

(并在其他答案中提到,请确保folders: - map:的目录存在)

答案 1 :(得分:14)

在您的Ubuntu计算机中,您必须让Homestead知道您的实际代码所在的位置。例如:

如果您的代码位于名为WORKSPACE的单独分区中,则需要输入以下内容:

    - map: /Volumes/WORKSPACE/YourProject
      to: /home/vagrant/Code

答案 2 :(得分:3)

在Windows中,我使用了这个:
- map:e:/ GIT / PHP / mathmaps / Code
    to:/ home / vagrant / Code

P.S。 GIT是我的工作区文件夹

答案 3 :(得分:1)

第二次运行bash init.sh会提示覆盖初始设置,这也会输出编辑正确的Homestead.yaml文件所需的目录路径。

答案 4 :(得分:-1)

必须将map:属性设置为您要保留代码的位置。例如,我将我的代码保存在Homestead文件夹中名为code的文件夹中,因此map为:

folders:
    - map: ~/Development/Homestead/Code
      to: /home/vagrant/Code

哪里'发展'只是我的主目录中的一个文件夹,我保留了所有代码