有人可以详细解释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
以下是我对其内容的理解,如果我错了,请纠正我,当然还要添加评论。
授权: 〜/ .ssh / id_rsa.pub
本地计算机中的目录 您存储公共.ssh文件。此文件夹可以是您的任何文件夹 本地机器,对吗?键: - 〜/ .ssh / id_rsa
本地计算机中用于存储本地.ssh文件的目录。此文件夹可以是您本地的任何文件夹 机器,对吧?文件夹:
- map:〜/ Code
to: / home / vagrant / Code
-map: 本地计算机中用于存储所有项目的目录。此文件夹可以是本地计算机中的任何文件夹,对吗?
于: 我相信这是你的项目将存储在 虚拟机,如果这是正确的,最后一个文件夹需要 匹配本地结构中的最后一个文件夹?
站点
- 地图:homestead.app
to: / home / vagrant / Code / Laravel / public
-map:我相信这是您将用于访问您网站的网址或域名,只要您将其添加到网站,它就可以是您想要的任何内容 你的localhost文件,对吗?
to:我不确定这是什么......
数据库:
- 宅基地 一个名为宅基地的数据库将自动创建,对吗?
由于
答案 0 :(得分:5)
授权:〜/ .ssh / id_rsa.pub 本地计算机中用于存储公共.ssh文件的目录。此文件夹可以是本地计算机中的任何文件夹,对吗?是
键: - 〜/ .ssh / id_rsa 本地计算机中用于存储本地.ssh文件的目录。此文件夹可以是本地计算机中的任何文件夹,对吗?是
Homestead.yaml使用了很多默认值,这种方式在创建一个新的.ssh键时你不需要触摸任何东西
文件夹: - 地图:〜/代码 to:/ home / vagrant / Code
-map:本地计算机中用于存储所有项目的目录。此文件夹可以是本地计算机中的任何文件夹,对吗?是 to:我相信这是你的项目将存储在虚拟机中的位置,如果这是正确的,最后一个文件夹是否需要匹配本地结构中的最后一个文件夹? 没有必要,您只需在虚拟机中指定一个路径,它将填充-map:文件夹中的所有文件
站点: - 地图:homestead.app to:/ home / vagrant / Code / Laravel / public
-map:我相信这是您将用于访问您网站的网址或域名,只要您将其添加到您的localhost文件中,它就可以是您想要的任何内容,对吗? to:我不确定这是什么......
这两行是配置类似虚拟主机的东西,我不确定它在内部是如何工作的,但基本上你将一个文件夹(到)映射到一个域(地图),这将创建一个新的虚拟主机,这样你就可以通过在本地计算机浏览器中键入:homestead.app来访问您的网站。请记住,您需要编辑主机文件,/ etc / hosts或/ windows / system32 / drivers / etc / hosts并添加一个新行,如:
192.168.10.10 homestead.app
数据库: - 宅基地 不确定这个,我会看看它,但在我看来你是对的,只需定义一个新名称,omestead将为你创建数据库。
希望这有帮助
答案 1 :(得分:3)
数据库: - 宅基地 一个名为homestead的数据库将自动创建,对吗?
是。
如果要创建更多数据库,只需在- homestead
下添加数据库名称,然后运行命令homestead provision
,就会看到数据库已创建。
注意该条款有害,因为它会重置数据库,并且数据库中的数据将与表格一样被删除。
答案 2 :(得分:2)
您还可以向options
元素中的map/to
元素添加folder
元素,如下例所示,并指定一系列选项{{3 }}
- map: ~/Workspace/my/mapped/directory
to: /home/vagrant/my/directory
options:
owner: "www-data"
group: "www-data"
mount_options: ["dmode=0770,fmode=774"]
答案 3 :(得分:1)
虽然我迟到了,但我最近安装了Homestead和Homestead.YAML很难理解,因为官方文档缺乏。偶然发现了一篇非常好的文章,但它太长了,无法复制到这里,所以我只提供一个链接,希望它可以帮助新手。