如何在我的环境中为新站点刷新宅基地?

时间:2014-11-23 02:43:11

标签: laravel laravel-4 vagrant

我在家用开发机器(Mac)上运行Laravel 4并享受它到目前为止但在添加新网站时遇到了麻烦。问题是我在〜/ .homestead / Homestead.yaml文件中为新网站添加了这样的行:

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

sites:
    - map: listingnaples.dev
      to: /home/vagrant/Sites/listingnaples.com/public

    - map: videocraftersusa.dev
      to: /home/vagrant/Sites/videocraftersusa.com/

然后,我的/ etc / hosts看起来像这样:

# MY SITES
192.168.10.10 listingnaples.dev
192.168.10.10 videocraftersusa.dev
192.168.10.10 laneyandchris.dev

如果我进去并homestead destroy后跟homestead up,我可以访问这些新网站中的任何一个。这删除了我的数据库,真的让我回头。我如何刷新"可以这么说?如果我将myawesomesite.dev添加到我的/ etc / hosts中,我怎样才能让宅基地拿起它?

我尝试homestead --provision,但这不是一个公认的命令。

对于它的价值,在我的〜/ .homestead /目录中,我没有VagrantFile。不确定在哪里,所以我也不能运行流浪汉。

7 个答案:

答案 0 :(得分:8)

我只是使用homestead ssh ssh然后添加此行

serve domain.app /home/vagrant/Code/path/to/public/directory

您将domain.app替换为您的应用名称,就像您在yaml文件中使用的那样,以及您的新公共站点目录的路径,然后只是homestead up,您可以看到它处于活动状态。

答案 1 :(得分:6)

您还可以重新加载框和设置

vagrant reload --provision

重新加载该框并查看是否有更改,如果是这样的话,它将在重新加载时进行更改

答案 2 :(得分:3)

尝试运行vagrant global-status。您将在此时看到正在运行的框列表,如下所示:

MacBook-Pro-lancedikson:~ lancedikson$ vagrant global-status
id       name    provider   state   directory
------------------------------------------------------------------------------------------
9710b02  default virtualbox running /Users/lancedikson/.composer/vendor/laravel/homestead

The above shows information about all known Vagrant environments
on this machine. This data is cached and may not be completely
up-to-date. To interact with any of the machines, you can go to
that directory and run Vagrant, or you can use the ID directly
with Vagrant commands from any directory. For example:
"vagrant destroy 1a2b3c4d"

这就是全部。现在运行vagrant provision 9710b02,它将被配置。

答案 3 :(得分:2)

您必须在vagrant provision所在的同一目录中使用Homestead.yaml

答案 4 :(得分:2)

从Laravel 5开始,更重要的是Homestead 2.0,只需运行:

homestead up

然后:

homestead provision

答案 5 :(得分:2)

你可以运行:

homestead up --provision

答案 6 :(得分:0)

就我而言,我在Gson gson = new Gson(); List<MyClass> result = gson.fromJson("[{s:'Hello'}]", listTypeWith(MyClass.class)); System.out.println(result); // [MyClass [s=Hello]] Homestead.yaml中有一个~/.homestead/

我不确定默认位置是否已更改或我是否手动更改(可能是因为我不喜欢隐藏的目录),但请确保您没有多个~/Homestead/文件。我现在将它们符号化,这样我就不会再迷惑自己了。

但通常,Homestead.yamlhomestead provision(当它被关闭时)应该这样做。