了解Laravel中的Homestead yaml文件

fs_*_*gre 7 yaml virtualbox vagrant laravel homestead

有人可以详细解释Homestead.yaml文件.没有完全理解它的内容困扰着我.

这是完整的Homestead yaml文件:

ip: "192.168.10.10"
memory: 2048
cpus: 1
provider: virtualbox

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

databases:
    - homestead

variables:
    - key: APP_ENV
      value: local
Run Code Online (Sandbox Code Playgroud)

以下是我对其内容的理解,如果我错了,请纠正我,当然还要添加评论.

授权: 〜/ .ssh/id_rsa.pub
本地计算机中存储公共.ssh文件的目录.此文件夹可以是本地计算机中的任何文件夹,对吗?

keys: - 〜/ .ssh/id_rsa
本地计算机中存储本地.ssh文件的目录.此文件夹可以是本地计算机中的任何文件夹,对吗?

文件夹:
- map:〜/ Code
to:/ home/vagrant/Code

  • -map:本地计算机中用于存储所有项目的目录.此文件夹可以是本地计算机中的任何文件夹,对吗?

  • to:我相信这是你的项目将存储在虚拟机中的位置,如果这是正确的,最后一个文件夹是否需要匹配本地结构中的最后一个文件夹?

网站:
- 地图:homestead.app
:/ home/vagrant/Code/Laravel/public

  • -map:我相信这是您将用于访问您网站的网址或域名,只要您将其添加到您的localhost文件,它就可以是您想要的任何内容,对吗?

  • to:我不确定这是什么......

数据库:
- 宅基地
称为宅基地的数据库将自动创建,对吗?

谢谢

Bor*_*nte 5

授权:〜/ .ssh/id_rsa.pub本地计算机中存储公共.ssh文件的目录.此文件夹可以是本地计算机中的任何文件夹,对吗?是

keys: - 〜/ .ssh/id_rsa本地计算机中存储本地.ssh文件的目录.此文件夹可以是本地计算机中的任何文件夹,对吗?是

Homestead.yaml使用了很多默认值,这种方式在创建新的.ssh键时不需要触摸任何东西

文件夹: - map:〜/ Code to:/ home/vagrant/Code

-map:本地计算机中用于存储所有项目的目录.此文件夹可以是本地计算机中的任何文件夹,对吗?是的:我相信这是您的项目将存储在虚拟机中的位置,如果这是正确的,最后一个文件夹是否需要与本地结构中的最后一个文件夹匹配?没有必要,您只需在虚拟机中指定一个路径,它将填充-map:文件夹中的所有文件

网站: - 地图:homestead.app:/ home/vagrant/Code/Laravel/public

-map:我相信这是您将用于访问您网站的网址或域名,只要您将其添加到您的localhost文件,它就可以是您想要的任何内容,对吗?to:我不确定这是什么......

这两行是配置像虚拟主机,我不知道它是如何在内部工作,但基本上你将一个文件夹(到)映射到一个域(地图),这将创建一个新的虚拟主机,以便您可以访问您的网站在本地机器浏览器中键入:homestead.app.请记住,您需要编辑主机文件,/ etc/hosts或/ windows/system32/drivers/etc/hosts并添加一个新行,如:

192.168.10.10 homestead.app

数据库: - 宅基地不确定这个,我会看看它,但在我看来你是对的,只需定义一个新名称,omestead将为你创建数据库.

希望这可以帮助


小智 5

数据库: - homestead 一个名为 homestead 的数据库将自动创建,对吗?

是的。如果你想创建更多的数据库,你可以在下面添加数据库名称- homestead,然后运行命令homestead provision,你会看到数据库被创建。

注意该规定是有害的,因为它会重置数据库,并且您数据库中的数据将与表一样被删除。


Mat*_*ter 5

您还可以optionsmap/to元素中的folder元素添加一个元素,如下例所示,并为此指定一系列选项,这些选项记录在 Vagrant 文档中

- map: ~/Workspace/my/mapped/directory
  to: /home/vagrant/my/directory
  options: 
      owner: "www-data"
      group: "www-data"
      mount_options: ["dmode=0770,fmode=774"]
Run Code Online (Sandbox Code Playgroud)

  • 非常感谢!我花了几个小时寻找这个! (2认同)