Laravel Homestead

介绍

Laravel努力使整个PHP开发经验令人愉快的,包括你的本地开发环境。流浪者提供了一种简单,优雅的方式来管理和提供虚拟机。

Laravel家园是一个官方的,预包装流浪汉“盒子”,为您提供而不需要安装PHP,HHVM,web服务器一个美妙的开发环境,并在本地计算机上的任何其它服务器软件。没有关于搞乱你的操作系统更令人担忧!流浪箱是完全一次性的。如果出现错误,你可以摧毁并在几分钟内重新创建盒!

宅基地上运行任何Windows,Mac或Linux系统,并包括Nginx的网络服务器,PHP 5.6,MySQL和Postgres的,Redis的,Memcached的,和所有其他好吃的东西,你需要开发惊人Laravel应用。

注:如果您使用的是Windows,你可能需要启用硬件虚拟化(VT-X)。它通常可以通过你的BIOS启用。

宅基地目前正在建造和使用放浪1.7测试。

包含的软件

安装与设置

安装VirtualBox虚拟器/ VMware与放浪

下水前的家园环境,您必须安装的VirtualBox流浪汉。这两个软件包提供易于使用的可视化安装所有流行的操作系统。

VMware

除了​​VirtualBox的,宅基地也支持VMware。要使用VMware提供者,你将需要购买两个VMware Fusion的/ Desktop和 VMware Vagrant plug-in。VMware提供更快的共享文件夹中表现出来的箱子。

Adding The Vagrant Box

一旦VirtualBox虚拟/ VMware和流浪已经安装,您应该添加laravel/homestead在终端使用下面的命令框,您的放浪安装。这将需要几分钟的时间下载框,这取决于你的互联网连接速度:

vagrant box add laravel/homestead

如果此命令失败,则可能有一个旧版本的流浪需要的完整URL:

vagrant box add laravel/homestead https://atlas.hashicorp.com/laravel/boxes/homestead

安装宅基

你可以通过简单地克隆库手动安装家园。考虑克隆库成宅基地文件夹中的“家”目录下,如宅基地框将作为主机所有的Laravel(和PHP)的项目:

git clone https://github.com/laravel/homestead.git Homestead

一旦你已经克隆了宅基地库,运行bash的初始化。 SH从宅基目录下创建命令家园。 YAML配置文件:

bash init.sh

宅地。 YAML文件将被放置在你的〜/ 。宅基地目录。

配置您的提供商

供应商在你的钥匙家园。 YAML文件指示哪些流浪提供商应使用:VirtualBox的vmware_fusion键(Mac OS X)或vmware_workstation(Windows)中。你可以设置你喜欢这对任何供应商。

provider: virtualbox

设置您的SSH密钥

接下来,你应该编辑宅基地。 YAML文件。在这个文件中,您可以配置的路径,你的公共SSH密钥,以及您希望得到您的主机和宅基地虚拟机之间共享文件夹。

没有一个SSH密钥?在Mac和Linux,你可以使用下面的命令通常会产生一个SSH密钥对:

ssh-keygen -t rsa -C "you@homestead"

在Windows上,您可以安装的Git,使用Git的猛砸外壳包括在GIT发出上面的命令。或者,你可以使用腻子PuTTYgen

一旦你创建了一个SSH密钥,指定要在关键的路径授权你的财产家园。 YAML文件。

Configure Your Shared Folders

文件夹的属性家园。 YAML文件列出所有你希望你的家园环境共享的文件夹。由于这些文件夹中的文件被更改,他们将保持同步你的本地计算机和宅基地环境之间。您可以配置多个共享文件夹的必要!

要启用NFS,只需添加一个简单的标志,您同步文件夹:

folders:
    - map: ~/Code
      to: /home/vagrant/Code
      type: "nfs"

配置您的Nginx网站

不熟悉Nginx的?没问题。该网站属性让您轻松映射“域”到一个文件夹在你的家园环境。样本站点配置中包括了宅基地。 YAML文件。同样,你可以添加任意多的网站到你的家园环境是必要的。宅基地可作为每个项目Laravel你工作在一个方便,虚拟化环境!

你可以做任何宅基网站上使用HHVM通过设置hhvm选项

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

每个站点将通过端口44300是通过访问通过HTTP端口8000和HTTPS。

巴什别名

来砸别名添加到您的家园中,只需添加到别名中的根文件〜/ 。宅基地目录。

推出的流浪盒

一旦你编辑的家园。 YAML根据自己的喜好,在运行了漂泊不定从您的宅基目录的命令。

无业游民将启动虚拟机,并自动配置您的共享文件夹和网站Nginx的!摧毁机器,你可以使用颠沛流离破坏-力命令。

不要忘了添加“域”为你的Nginx网站的主机计算机上的文件!该主机文件重定向将您的要求为当地域到您的家园环境。在Mac和Linux,这个文件位于/等/主机。在Windows上,它位于ç : \ 的Windows \ System32下\驱动程序\等\主机。您添加到该文件中的行会如下所示:

192.168.10.10  homestead.app

确保列出的IP地址是您在设置一个家园。 YAML文件。一旦你添加域到您的主机文件,您可以通过Web浏览器访问该网站!

http://homestead.app

要了解如何连接到数据库,阅读!

日常使用

连接通过SSH

因为你可能需要SSH到您的机器家园频繁,请考虑您的主机快速SSH,创造一个“别名”入宅框:

alias vm="ssh vagrant@127.0.0.1 -p 2222"

一旦你创建这个别名,你可以简单地使用“vagrant ssh”到您的机器家园从任何地方你的系统上。

或者,您可以使用SSH流浪汉从宅基目录的命令。

连接到您的数据库

一个宅基地数据库配置为MySQL和Postgres的开箱。为了更方便,Laravel的本地数据库配置设置默认使用此数据库。

要通过Navicat的或续集临主设备连接到您的MySQL或Postgres数据库,您应该连接到127.0 ,0.1和端口33060(MySQL的)或54320(Postgres的)。这两个数据库的用户名和密码是宅基地 / 秘密

注意:您应该只连接到数据库,从您的主机时,使用这些非标准端口。您将使用默认的3306和5432端口,在Laravel数据库配置文件,因为Laravel正在运行_中_的虚拟机。

添加其他网站

一旦你的家园环境配置和运行,你可能需要添加额外的Nginx网站为您Laravel应用。如你想在一个单一的环境家园,你可以运行尽可能多的Laravel安装。有两种方法可以做到这一点:首先,你可以简单地添加网站到你的家园。 YAML文件,然后运行游民提供从宅基目录。

注意:这个过程是破坏性的。当运行提供命令,现有数据库将被销毁并重新创建。

或者,你可以使用服务脚本可在您的家园环境。要使用服务的脚本,SSH到您的家园环境,运行以下命令:

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

注:在运行后发球命令,不要忘了在新的站点添加到主机的主机上的文件!

港口

以下端口转发到您的家园环境:

添加额外的端口

如果你愿意,你可以转发其他端口的流浪框,以及指定的协议:

ports:
    - send: 93000
      to: 9300
    - send: 7777
      to: 777
      protocol: udp

Blackfire探查

Blackfire探查由SensioLabs自动收集有关数据代码的执行,例如RAM,CPU时间和磁盘I / O。宅基地是一件轻而易举的使用这个分析器为自己的应用程序。

所有适当的包已经被安装在你的家园中,你只需要设置一个Blackfire 服务器 ID和令牌在你的Homestead.yaml文件:

blackfire:
    - id: your-server-id
      token: your-server-token
      client-id: your-client-id
      client-token: your-client-token

一旦你已经配置了Blackfire凭证,再提供使用中vagrant provision,从你的家园目录。当然,一定要查看Blackfire文档,以了解如何安装Blackfire伴侣扩展您的网络浏览器。