到运营品种,开发条件搭建

一 、Laravel环境搭建

事先学习过一段时间的 Laravel ,换 mac 后一直没空做连锁的工作,而且刚使用
mac
有点不习惯,怕坑太多,所以环境搭建就直接耽搁了下去。终于前日有1个比较完好的岁月,一狠心就把那件事做了。一共花了差不离5 个钟头,回头看看实际照旧格外不难的,首若是因为事先在 win
下边搭建环境的阅历有一对先入为主的错误想法还有网上资料时效性导致绕了一些弯路。

① 、安装浏览器 Chrome

  • 介绍:谷歌 Chrome,是一款由 谷歌 集团开发的网页浏览器。

  • 下载:https://www.google.cn/chrome

  • 版本:菜单 – 帮助 – 关于

  • 升级:菜单 – 帮助 – 关于

简介

Laravel 致力于让你在 PHP
开发进度中越发轻松高兴,那之中也囊括当地开发环境的搭建。
Vagrant
提供了一种简易、优雅的措施来管理和配备虚拟机。

Laravel Homestead 是一个合法预封装的 Vagrant
box,它为您提供了二个健全的开销环境,你无需在该地安装 PHP ,web
服务器,或任何服务软件。 Vagrant box
是一点一滴3次性的,你绝不操心系统被搞乱!如若有何样地点出错了,你能够在几分钟国内销售毁玉石俱焚建
box !

Homestead 能够运转在 Windows 、Mac 或 Linux 系统上,它里面含有了 Nginx
Web 服务器、PHP 7.1 、MySQL 、Postgres 、Redis 、Memcached 、Node
,以及一些有利你付出 laravel 应用的其余程序。

借使您采纳的是 Windows
系统,你或然供给启用硬件虚拟化(VT-x)。那日常需求经过 BIOS
来启用它。要是你在壹个 UEFI 系统上运用 Hyper-V,您可能还须求禁止使用 Hyper-V
才能启用 VT-x。

① 、window环境下环境搭建请参见以下链接:

homestead 是什么

Laravel 官方推荐应用 homestead 搭建环境,那么这几个 homestead
终究是何等鬼?相信广大和自己同样不是越发搞服务器的校友看过各样资料后还会有点迷糊。刚初叶看了一部分介绍后自身觉得
homestead 是二个整合了 Nginx + PHP + MySQL + Composer 还有任何 Laravel
要求环境的装置包加管理器的定义,类似 win 平台上的 wnmp
之类的东西。但是装贰分一就意识完全是另二遍事。
实则 homestead
是一台虚拟机的原型,类似大家买电脑后预装的连串,只是那些种类预装了整套
Laravel 要求的事物。而大家先导开始展览的步调安装 VirtualBox 和 Vargrnt
实际上正是设置了虚拟机。那意味实际上 homestead 安装实现后大家的 mac
上并从未也不须要设置 PHP、Nginx、MySQL
等等的事物,全部东西都设置在另一台机械上(虚拟机)。

美高梅开户网址 1

homestead 配置步骤

2、安装命令行工具 Git for Windows

  • 介绍:Git 是时下世界上初叶进的分布式版本控制系统(没有之一)。

  • 下载: Git
    官网

    gitforwindows

  • 版本:git --version

  • 升高:Git for Windows 直接下载最新版本安装;虚拟机 VirtualBox 里
    Homestead 自带的 Git 则提高 Homestead 即可。

内置软件

  • Ubuntu 16.04
  • Git
  • PHP 7.1
  • Nginx
  • MySQL
  • MariaDB
  • Sqlite3
  • Postgres
  • Composer
  • Node (With Yarn, Bower, Grunt, and Gulp)
  • Redis
  • Memcached
  • Beanstalkd
  • Mailhog
  • ngrok

  开发条件搭建 – Windows | 《Laravel
开发环境陈设》 | PHP / Laravel 社区文书档案

安装VirtualBox、Vargrant

VirtualBox下载地址
Vagrant下载地址
这一步卓殊简单,官网都有 dmg 安装包,寻常安装即可。
申明是还是不是安装成功在终点应用以下命令行,呈现版本音讯就 OK 了。

vagrant -v

三 、安装代码编辑器 SublimeText

  • 介绍:以下是三款10分优良和流行的代码编辑器,首推 SublimeText,其次
    Atom。

    • Atom
    • SublimeText
    • PHPStorm
    • Visual Studio
    • Vim
    • Eclipse
  • 下载:

软件官网下载。安装后添加环境变量,方便命令行工具调用编辑器:

自小编的电脑 > 属性 > 高级系统安装 > 环境变量 >
修改用户变量或系统变量中的 Path > 新建 > 添加变量地址,如
C:\Atom > 一路鲜明,重启电脑。

测试:> atom --version

  • 版本:帮助 – 关于

  • 升高:软件官网下载最新版安装。

设置与安装

  

安装 Homestead Vagrant Box

直接输入以下命令行:

vagrant box add laravel/homestead

然后会提醒选取版本,选取 virtualbox 版本相应序号即可。
本条手续也就是下载虚拟机的预装系统,文件超过1G,全程最耗费时间的步调,请挂 VPN,你懂的。其余实在万分也能够考虑对
homestead.box 间接举行下载,并且手动导入。由于作者本身是挂了 VPN
直接下了,手动导入的内容就不多说,文末会付出相应课程链接。

肆 、安装版本管理软件 Git

  • 注:安装了命令行工具 Git for Windows 就暗许安装好 Git
    ,无需重新安装。虚拟机里面 Homestead 也自带 Git,无需重复安装。

第一步

在您选取 Homestead 环境在此之前,你必须先安装 VirtualBox
5.1
、VMWare
或者
Parallels
中的八个,然后再安装
Vagrant。上述软件均提供了针对性区别操作系统的可视化安装包。

若要使用 VMware provider,你须求同时购买 VMware Fusion / Workstation
以及 VMware Vagrant
插件
的软件授权,因为它们不是免费的。使用 VMware
的优势是:能够获得开箱即用的共享文件夹天性。

若要使用 Parallels provider,你须求设置 Parallels Vagrant
插件
,那是免费的。

 

安装 Homestead

#切换到用户文件夹
cd ~
#克隆homestead项目 到 home/Homestead 文件夹
git clone https://github.com/laravel/homestead.git Homestead

git 项目克隆成功后,切换来 Homestead 文件夹,创制连锁配置文件:

#切换到homestead目录
cd ~/Homestead
# Mac / Linux...
bash init.sh

伍 、安装虚拟机 VirtualBox

  • 介绍:VirtualBox 是 Oracle 公司的开源虚拟机软件。Virtual博克斯号称是最强的免费虚拟机软件,它不但成效齐全,而且性能也绝对漂亮!VirtualBox帮助半数以上盛行的系统,如:Mac, Windows, Linux 等。

  • 下载:VirtualBox官网下载

  • 版本:帮助 – 关于

  • 晋级:官网下载最新版安装

安装 Homestead Vagrant Box

当 VirtualBox / VMware 以及 Vagrant 安装到位后,你能够运用以下命令将
laravel/homestead 那几个 box 添加进你的 Vagrant 个中。 homestead box
的下载会花费你或多或少年华,具体的下载时间长度由互连网速度控制:

vagrant box add laravel/homestead

假诺上面的一声令下运维退步,请先确认保证您早就设置了新式版本的 Vagrant。

  • 比方接纳国内网络,能够复制终端上展现的 homestead box
    下载地址手动下载同等看待命名。例如重命名为 virtualbox-3.0.0.box。

接下来,新建二个 metadata.json 文件,并写入以下示例内容:

{
    "name": "laravel/homestead",
    "versions": 
    [
        {
            "version": "3.0.0",
            "providers": [
                {
                  "name": "virtualbox",
                  "url": "virtualbox-3.0.0.box"
                }
            ]
        }
    ]
}

终极,使用以下命令手动添加 box

vagrant box add metadata.json # 添加 box
vagrant box list # 列出所有 box

② 、需求留意难题

编辑 Homestead.yaml

走完上面步骤后 Homestead 文件夹里会晤世2个 Homesstead.yaml
配置文件。这几个文件能够布署 mac 与虚拟机的共享文件夹、Nginx
站点、数据库等等、虚拟机使用 cpu 数、内部存款和储蓄器等等。
今后我们的目标是先安装并运行 Laravel
就行了,先接纳其预设值即可,先不开始展览改动。不过大家要求依据其预设值对 mac
举行部分操作。
开拓 Homesstead.yaml,先看一眼 folders 的值:

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

folders 决定了 mac 与虚拟机的共享文件夹,以上预设值指:mac 的 ~/Code
目录与虚拟机的 /home/vagrant/Code 是映射的涉及。那时大家的 mac
上并不曾 ~/Code 这几个目录,自行新建即可。

#切换到用户目录
cd ~
#创建文件夹
mkdir -p code/lexing

陆 、安装虚拟机管理工科具 Vagrant

  • 介绍:Vagrant 是用来保管虚拟机的工具,帮忙当前主流的虚拟机系统如
    VirtualBox、VMware、AWS 等。Vagrant 的重要意义是由此编写制定多个Vagrantfile 文件提供1个可安插、可移植和复用的软件条件。

  • 到运营品种,开发条件搭建。下载:Vagrant
    官网下载

  • 版本:vagrant --version

  • 进步:官网下载最新版本

安装 Homestead

你能够省略利用 Git 克隆代码仓库的措施来安装
Homestead。建议将仿造的代码仓库重命名为 Homestead
,并放置到您的「home」目录中,如此一来 Homestead box
就能当做主机,为您的保有 Laravel 项目提供服务:

cd ~

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

由于 Homestead 的 master
分支并不是政通人和分支,你应有检出已经标签过的安澜版本。你能够在 Github
Release
Page
找到最新的财运亨通版本。

cd Homestead

// 检出所需要的版本...
git checkout v5.4.0

比方你克隆完 Homestead 的代码仓库,就能够在 Homestead 目录中运作 bash
init.sh 命令来创建 Homesstead.yaml 配置文件。 Homesstead.yaml
文件会被停放在您的 Homestead 目录中:

// Mac / Linux...
bash init.sh

// Windows...
init.bat

以下皆为按暗中同意搭建环境下的操作

编辑 /etc/hosts 文件

此时大家再看一看 Homesstead.yaml 的 ip 和 sites 两项:

ip: "192.168.10.10"
......
sites:
    - map: homestead.app
      to: /home/vagrant/Code/Laravel/public
......

ip 是指 Homestead 的 ip,sites
则是钦定域名去对应虚拟机的文件目录。记住那八个值,相应的去 /etc/hosts
文件最终添加如以下格式内容即可。其余提一下 etc 文件夹使用 Fider
的前往文件夹,输入/etc/ 就足以进去了。

192.168.10.10  homestead.app

到此地准备工作就曾经形成了,我们得以启动虚拟机了。

7、安装 Vagrant 盒子 Laravel Homestead

  • 介绍:

Laravel 为开发者提供了一套完善的份额级本地开发环境 —— Laravel
Homestead。 Laravel Homestead 实际是3个打包好各样 Laravel
开发所需软件和工具的 Vagrant 盒子。Homestead 包涵了四个东西:

  • Homestead Vagrant Box 虚拟机盒子;
  • Homestead 管理脚本。

Homestead Vagrant Box 虚拟机盒子是提前打包好的 Vagrant Box虚拟机盒子,里面预装了有着你在选择 Laravel 开发时所要求动用的种种软件。

Homestead 脚本使用 Ruby 和 Shell 脚本编写而成。原理是对 Vagrantfile
文件做定制。将从~/Homestead/Homestead.yaml 读取的安插音信,在 provision
时,解析为 Vagrant 命令并举行对虚拟机的布局。

  • 下载:

homestead
管理脚本

Homestead Vagrant
Box

  • 安装

    • 导入 Homestead Vagrant Box:把 Homestead Box解压到非粤语路径,运维以下命令导入
      Box:vagrant box add metadata.json

    • 设置 homestead 管理脚本

> cd ~
> git clone https://github.com/laravel/homestead.git ~/Homestead 

进入 Homestead 目录,使用 Git 检出大家供给的 Homestead 版本:

> cd ~/Homestead
> git checkout v5.4.0

初始化 Homestead:

> bash init.sh

  • 版本:

    • Homestead Vagrant Box:vagrant box list
    • Homestead 管理脚本:(不知底)
  • 升级:

更新 Homestead 只要求八个简单步骤。首先,运营 vagrant box update 更新
Vagrant box :

vagrant box update

接下来,更新 Homestead 源代码。假设你是应用 git
克隆仓库安装的,你可以在仓库目录下运作 git pull origin master 命令。

只要你是经过品种 composer.json 文件安装的,你要求更新 Homestead 依赖为
“laravel/homestead”: “^7″,然后运营:

composer update

配置 Homestead

壹 、下载下来的Laravel项目,登录数据库

开发银行虚拟机

鉴于进入虚拟机就都要用命令行干活了,那里推荐一下足以动用
iTerm
那个命令行工具。
在mac命令行中输入
cd ~/Homestead,切换来homestead项目所在到目录,然后输入
vagrant up,运行画面如下图:

美高梅开户网址 2

运营虚拟机

8、配置 Homestead.yaml 文件

Homestead.yaml 文件在 ~/Homestead
文件夹里,是最首要布署音信文件,我们能够在此文件中配置 Homestead
的站点和数据库等消息。

配置你的提供者

Homestead.yaml 中的 provider 参数设置取决于你用的是哪三个 Vagrant 提供者
virtualbox 、vmware_fusion 、vmware_workstation 或然parallels。你能够遵照自个儿的实际上意况来安装提供者:

provider: virtualbox
homestead / secret

SSH 登入虚拟机

开发银行成功之后,输入vagrant ssh 登陆到 vagrant 虚拟机,如下图所示:

美高梅开户网址 3

ssh登入虚拟机 注意命令行行首已经成为 vagrant

快速打开:

> atom ~/Homestead/Homestead.yaml

配置共享文件夹

您能够在 Homestead.yaml 文件的 folders 属性里列出富有想与 Homestead
环境共享的文本夹。那个文件夹中的文件若有改观,它们将会在你的本机电脑与
Homestead 环境自动更新同步。你能够在那边设置八个共享文件夹:

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

若要运转
NFS
,只须要在共享文件夹的设置值中投入3个差不离的参数:

folders:
    - map: ~/Code
      to: /home/vagrant/Code
      type: "nfs"
  • 假设利用 NFS ,建议你安装
    vagrant-bindfs
    插件。 这一个插件会替你处理 box 中的文件或目录权限难点。

您也足以在布署中传递任何 Vagrant
共享文件夹
扶助的参数,在 options 配置项下列出它们:

folders:
    - map: ~/Code
      to: /home/vagrant/Code
      type: "rsync"
      options:
          rsync__args: ["--verbose", "--archive", "--delete", "-zz"]
          rsync__exclude: ["node_modules"]

② 、通过vagrant驱动虚拟机

在虚拟机中安装 Laravel

中标登入后使用以下命令在虚拟机中选拔 Composer(虚拟机中早已预装好了)
下载 Laravel。当然,VPN 不可能停。即便应用 VPN
照旧十二分的话可能须要挂国内镜像,网上有部分材质相比陈旧,导致镜像网址
https 少了个 s,注意确认。
镜像用法点笔者!

cd Code
composer create-project laravel/laravel Laravel --prefer-dist

此间切换到的 Code 目录便是预设与 mac 用户目录下 Code
文件夹映射的文件夹。Composer 会在 Code
里新建一个 Laravel 文件夹,下载 Laravel 所需文件。也恰恰和
Homesstead.yamlsites 钦点的文件路径切合。
–prefer-dist: 意思是下载用于 distribution
的安静版本,而不是付出中的版本。

下载实现后就马到功成了,浏览器里输入 homestead.app
(预设值的域名),出现以下画面就没难点了。

美高梅开户网址 4

Laravel 安装成功

到那里大家的环境就曾经搭建完毕了。下边再补偿一下 Homestead
的关机等必须精晓的操作,还有正是大家要运转自身的门类要求求采用到的数据库连接和
Nginx 新增站点的操作。

安插项目

Homestead.yaml 里的布署差不离能够分成以下二种:

  1. 虚拟机设置;
  2. SSH 秘钥登录配置;
  3. 共享文件夹配置;
  4. 站点布局;
  5. 数据库配置;
  6. 自定义变量。

配置 Nginx 站点

对 Nginx 目生吗?没关系。sites 属性可以补助您能够肆意钦点三个 域名
来对应到 homestead 环境中的一个目录上。在 Homestead.yaml
文件中已带有了七个网站设置范本。同样的,你也得以追加五个网站到您的
Homestead 环境中。 Homestead 能够而且为三个 Laravel 应用提供虚拟化环境:

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

只要您在 Homestead box 配置之后更改了 sites 属性,那么应该再次运行vagrant reload –provision 来更新 Nginx 配置到虚拟机上。

cd ~/Homestead && vagrant up

关闭/删除/重建 Homestead

Homestead
相当于另二个连串,所以本来也是叁个耗能小棋手,所以不要的时候千万要记得关闭。以下是退出登陆并关闭虚拟机命令。

# 命令行工具退出对虚拟机系统登陆
eixt
# 虚拟机关机(位置要在 Homestead 文件夹)
vagrant halt

下次必要利用时,从 vagrant up 步骤发轫即可。

在测试中因为种种缘由造成虚拟机坏掉的时候,只必要对虚拟机实行删减、重建即可,格外便于。

# 删除当前虚拟机(需要在 Homestead 文件夹下)
vagrant destroy --force
# 重建虚拟机
vagrant up

在意删除指的是删除 vagrant up 建立的虚拟机,和删除全部 Homestead
是例外定义。若是完全不想使用 Homestead 了,想要删除能够参照上面链接。
删除 Homestead
与须知

虚拟机设置

Homestead 扶助我们对虚拟机的 IP,内部存款和储蓄器,CPU,虚拟机的暗许提供者实行布局。

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

关于 Hosts 文件

你必须将在 Nginx sites 中所添加的「域名」也丰裕到您本机电脑的 hosts 上。
hosts 文件会将请求重定向至 Homestead 条件中安装的地点域名。在 Mac 或
Linux 上,该文件一般会存放在 /etc/hosts。在 Windows 上,则存放于
C:\Windows\System32\drivers\etc\hosts。设置剧情如下所示:

192.168.10.10  homestead.app

请务必确认 IP 地址与 Homestead.yaml 文件中装置的同样。将域名设置在 hosts
文件之后,你就可以透过网页浏览器访问你的网站。

http://homestead.app

③ 、Bash 登录虚拟机

老是数据库

实则在虚拟机中曾经为 MySQL 和 Postgres 配置好了多少个开箱即用的数量库
homestead 。Laravel 中的 .env 文件的暗许值正是利用了这几个数据库。
数据库既然有了,那难点是怎么总是上呢?今后我们看一看刚才大家运营的
Laravel 项目原型中的 .env 文件中有关数据库的内容。

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret

能够观望一连指向了本机地址的 3306 端口,数据库名为
homestead,账号密码分别是 homestead /
secret。有了这一个音信,大家就能延续上数据库了,相比简单的动静下大家只须要修改数据库名为大家自身创办的多寡库名。
设若想要从您主机上的数据库客户端连接 MySQL 或 Postgres,能够通过
127.0.0.1 来利用端口 33060(MySQL) 或 54320(Postgres) 连接。
在意是端口是 33060,不是文件上的 3306。小编自身是运用 Workbench
连接数据库,少了叁个 0 貌似连不上。

美高梅开户网址 5

动用 Workbench 连接数据库

SSH 秘钥登录配置

authorize
选项是指派登录虚拟机授权连接的公钥文件,此文件填写的是主机上的公钥文件地点,虚拟机开端化时,此文件里的内容会被复制存款和储蓄到虚拟机的
/home/vagrant/.ssh/authorized_keys文件中,从而实现 SSH 免密码登录。

authorize: ~/.ssh/id_rsa.pub

keys 是数组选项,填写的是本机的 SSH
私钥文件地方。虚拟机初阶化时,会将那里填写的具有 SSH
私钥文件复制到虚拟机的 /home/vagrant/.ssh/
文件夹中,从而使虚拟机能共享主机上的 SSH
私钥文件,使虚拟机械和工具备同样主机的身价注明。

将公钥和私钥一起手拉手到虚拟机中:

keys:
    - ~/.ssh/id_rsa
    - ~/.ssh/id_rsa.pub

生成 SSH Key,先检查主机上是或不是曾经生成过 SSH Key:

> ls -al ~/.ssh

假使不设有 id_rsa 和
id_rsa.pub
的话,使用以下办法来生成 SSH Key,请将
your_email@example.com
替换为您的信箱:

> ssh-keygen -t rsa -C "your_email@example.com"

指令行会提示让你钦赐秘钥的称谓,按回车键将 SSH Key
保存到默许文件名即可:

Enter a file in which to save the key (/Users/you/.ssh/id_rsa): [Press enter]

接下去会询问你为 SSH Key 设置密码,按回车键即可,默许为空密码:

Enter passphrase (empty for no passphrase): [Type a passphrase]
Enter same passphrase again: [Type passphrase again]

然后一并 Enter 键即可,如图:

美高梅开户网址 6

image

再使用:

> ll ~/.ssh

翻看的话,可看到五个公文:

SSH 秘钥的八个文本:

  • id_rsa —— SSH 秘钥的 私钥 (Private Key)
  • id_rsa.pub —— SSH 秘钥的 公钥 (Public Key)

启动 Vagrant Box

根据你的喜好完成 Homestead.yaml 编辑后,进入你的 Homestead 目录并运转vagrant up 命令。 Vagrant 就会依照 Homestead.yaml
里的配备音信运维,并为虚拟机设置共享文件夹和 Nginx 网站。

要是要移除虚拟机,你能够应用 vagrant destroy –force 命令

vagrant ssh 

新增站点

选用 Homestead 的一大便宜便是不用去折腾 Nginx
配置文件。要添加额外的网站,只需将网站添加到您的 Homestead.yaml 文件中:

 sites:
    - map: homestead.app
      to: /home/vagrant/Code/Laravel/public
    - map: test.com
      to: /home/vagrant/Code/test/public

然后在 /etc/hosts 文件中添加相应内容:

192.168.10.10  homestead.app
192.168.10.10  test.com

然后在 Homestead 文件夹下,使用 vagrant reload --provision
命令就形成了。网上有一对材料说那么些命令会损毁并再次创建现有的数据库,建议手动去修改
Niginx
的配置文件。小编本身试了弹指间是不曾那几个情景出现的,不知道是因为版本依旧本人晓得错误的来由。手动修改的艺术本人也试了弹指间,不过在虚拟机里从未权力导致失利,权且没有缓解。方法能够参见文末的链接。反正那几个标题官方文书档案也并从未提及,小编是不太想去折腾
Nginx 文件正是了。

此外给出多少个带有本文未提及内容但是恐怕要求采纳到的链接:

手动配置nginx服务器、导入homestead.box,在该文章最终附录处。
设定 ssh
key,使用
ssh 登入前恐怕必要以此手续,小编本身是并非,或者是由于事先运用 git
的时候曾经弄过了?
官方汉语文书档案

共享文件夹配置

因此 folders 来指明本机要映射到 Homestead 虚拟机上的文件夹。

  • map 对应的是我们本机的公文夹;
  • to 对应的是 Homestead 上的文书夹。

联合布置如下:

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

创建~/Code 文件夹:

> cd ~
> mkdir Code

为各个门类分别安装

除去在全局范围内安装 Homestead 环境,全数类型共享相同的 Homestead box
外,你还是能为每贰个体系布置1个独门的 Homestead 实例。通过传递
Vagrantfile ,能够达成为各种项目各自安装上 Homestead
,其余连串成员只需求经过简单的 vagrant up 即能跟你有所同样的 Homestead
环境。

要将 Homestead 直接设置到花色中,必要使用 Composer:

composer require laravel/homestead --dev

假如 Homestead 安装完成,能够动用 make 命令生成 Vagrantfile 与
Homestead.yaml 文件,并存放于项指标根目录。make 命令将会活动在
Homestead.yaml 文件中布置 sites 及 folders

Mac / Linux:

php vendor/bin/homestead make

Windows:

vendor\\bin\\homestead make

接下去,在指令行中运转 vagrant up 并透过网页浏览器访问
http://homestead.app。再度提示:你仍旧必要在
/etc/hosts 里配置 homestead.app 或任何想要使用的域名。

要是你希望利用 玛丽亚DB 来替换 MySQL,你能够在 Homestead.yaml
文件中扩展一个 mariadb 的选项,这么些选项会移除 MySQL 并设置 玛丽亚DB。因为
玛丽亚DB 可用作 MySQL 的替代品,所以在你的数据库配置信息里,可继续利用
mysql 数据库驱动。

box: laravel/homestead
ip: "192.168.20.20"
memory: 2048
cpus: 4
provider: virtualbox
mariadb: true
  • 设置 玛丽亚DB 要求连接境外网络,请保管网络通畅!

④ 、VirtualBox登录虚拟机暗中认可账号密码:

站点布局

站点布局允许你在主机里,通过域名来访问虚拟机里的 Laravel 应用。如下面sites 配置所示,将 homestead.app 映射到四个 Laravel 项指标 public
目录上。

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

绑定 hosts:

应用编辑器直接打开文件: C:\Windows\System32\Drivers\etc\hosts
,在结尾面出席以下一行:

192.168.10.10 homestead.app

广阔用法

vagrant / vagrant

数据库配置

为 Homestead 钦点数据库名称,那里运用暗许设置即可。

databases:
    - homestead

全局使用

奇迹你期望在文件系统的别样地点都得以利用 vagrant up
命令运维虚拟机,那么您须要添加以下代码到你的 Mac / Linux 系统的 Bash
profile 文件之中。对于 Windows 系统,您能够经过在 PATH
环境变量中加上「批处理」文件的方法来落实此目标。下边那几个本子让您能够在文件系统的另外岗位都能运作
Vagrant 命令,它也正是切换来 Homestead 目录运维 Vagrant 命令:

⑤ 、Nginx配置文件所在目录

自定义变量

若果你需求自定义一些在虚拟机上得以动用的自定义变量,则可以在 variables
中开始展览定义。

variables:
    - key: APP_ENV
      value: local
Mac / Linux
function homestead() {
    ( cd ~/Homestead && vagrant $* )
}

请将 ~/Homestead 那些路子修改为您的莫过于 Homestead
的设置路径,一旦那么些函数安装成功,就足以在系统的随意地方运营 homestead
up 或 homestead ssh 命令。

vim /etc/nginx/nginx.conf
cd /etc/nginx/sites-available (所有站点配置文件)

运行 Vagrant

Vagrant 常用的有的命令行的接纳:

命令行 说明
vagrant init 初始化 vagrant
vagrant up 启动 vagrant
vagrant halt 关闭 vagrant
vagrant ssh 通过 SSH 登录 vagrant(需要先启动 vagrant)
vagrant provision 重新应用更改 vagrant 配置
vagrant destroy 删除 vagrant

启动 Homestead:

> cd ~/Homestead && vagrant up

率先次运行时,Vagrant 会做以下这几件业务:

  • 以导入的 Homestead 虚拟机盒子为模板,新建一台虚拟机;
  • 并依据 Homestead.yaml 里的布署新闻,对那台新建的虚拟机举办布署;
  • 安顿完毕后运行虚拟机。

中标运转后,还是在 ~/Homestead 目录中,通过以下命令来 SSH 登录 Homestead
虚拟机中:

> vagrant ssh

脱离虚拟机:

> exit

关闭 Homestead:

`> vagrant halt

Windows

在系统的人身自由地方成立二个批处理公事 homestead.bat ,并加上如下内容:

@echo off

set cwd=%cd%
set homesteadVagrant=C:\Homestead

cd /d %homesteadVagrant% && vagrant %*
cd /d %cwd%

set cwd=
set homesteadVagrant=

请确认保证将 C:\Homestead 这一个路子修改为您的实在 Homestead
的设置路径,创造完这些文件后,将以此文件路径添加到 PATH
环境变量中,就能够在系统的即兴地点运营 homestead up 或 homestead ssh
命令。

陆 、Laravel内置命令行使用

通过 SSH 连接

你能够在 Homestead 目录运转 vagrant ssh 命令来三番五次虚拟主机。

不过,由于你只怕必要反复地选拔 SSH 来连接 Homestead
主机,请考虑将上述「function」添加到你的主机,以便能够飞快的通过 SSH
进入你的 Homestead box

透过命令行指令切换成Laravel项指标根目录下,命令方式为:php
artisan (+具体命令)

总是数据库

在 box 中曾经为 MySQL 和 Postgres 配置好了三个开箱即用的数据库 homestead
,为了更便利的应用它,Laravel 中的 .env
文件将那一个数据库设置成了框架默许使用的数据库。

一经想要从你主机上的数据库客户端连接 MySQL 或 Postgres,能够透过
127.0.0.1 来行使端口 33060(MySQL) 或 54320(Postgres)
连接。账号密码分别是 homestead / secret

  • 因为虚拟机做了端口转载,所以在本机电脑上你应有只行使那些非标准化准的连年端口。但在
    Laravel 数据库配置文件中,你依旧要动用暗中认可的 3306 及 5432 连接端口。

例如:

充实更多网站

倘若 Homestead 环境布署完毕且成功运行后,你可能会想要为 Laravel
应用程序扩张越来越多的 Nginx 网站。你能够在单个 Homestead 环境中运维多个Laravel 程序。要添加额外的网站,只需将网站配置音讯添加到您的
Homestead.yaml 文件中:

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

万一 Vagrant
没有机关管理你的「hosts」文件,你可能须求手动把新增的站点投入到「hosts」文件中:

192.168.10.10  homestead.app
192.168.10.10  another.app

当您的网站添加成就后,切换成 Homestead 目录运维 vagrant reload
–provision 命令就足以应用新的变更。

(1)、清除视图缓存  

网站类型

Homestead 帮忙几类别型的网站,允许你轻松地运营这几个不依据 Laravel
的门类。 例如,大家得以运用「symfony2」配置项,轻松地在 Homestead 中添加
Symfony 应用程序:

sites:
    - map: symfony2.app
      to: /home/vagrant/Code/Symfony/web
      type: symfony2

支撑的站点类型有:
apache、laravel(暗许)、proxy、silverstripe、statamic、symfony2 和
symfony4。

php artisan view:clear

网站参数

你还足以采用「params」配置项,添加额外的 Nginx fastcgi_param
值到您的网站。例如添加二个称呼为「FOO」值为「BAMurano」的附加布置。

sites:
    - map: homestead.app
      to: /home/vagrant/Code/Laravel/public
      params:
          - key: FOO
            value: BAR

(2)、清除运维缓存

配置 Cron 调度器

Laravel 提供了便利的措施来 美高梅开户网址 ,调度 Cron
任务
,通过 schedule:run Artisan 命令,调度便会在每分钟被运维。
schedule:run 命令会检查定义在您 App\Console\Kernel
类中调度的职务,判断哪些职务该被运转。

若果你想为 Homestead 网站使用 schedule:run 命令,你需求在概念网站时将
schedule 选项设置为 true

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

该网站的 Cron 职分会被定义在虚拟机的 /etc/cron.d 文件夹中。

php artisan cache:clear

端口

默许情状下,以下地点电脑端口将会被转正至 Homestead 条件:

  • SSH: 2222 → Forwards To 22
  • HTTP: 8000 → Forwards To 80
  • HTTPS: 44300 → Forwards To 443
  • MySQL: 33060 → Forwards To 3306
  • Postgres: 54320 → Forwards To 5432
  • Mailhog: 8025 → Forwards To 8025

(3)、清除配置缓存

转折越来越多端口

如果供给的话,你能够转化越来越多端给 Vagrant box
,甚至能够钦命它们的说道项目。

ports:
    - send: 50000
      to: 5000
    - send: 7777
      to: 777
      protocol: udp
php artisan config:clear

共享你的条件

突发性你想跟你的同事照旧是客户共享你眼下的工作进程。Vagrant
为此提供了一个放权方法 vagrant share;然而,要是你在 Homestead.yaml
文件中配备了多少个站点,那么那条命令将会变得没多大用处。

为了缓解那些难点,Homestead 提供了祥和的 share 命令。开首从前,通过
vagrant ssh 命令 SSH 进你的 Homestead 机器中,然后运维 share
homestead.app。那会从你的 Homestead.yaml 配置文件中国共产党享 homestead.app
站点。当然了,你也得以用别的已经布署的站点来顶替 homestead.app。

share homestead.app

运行完指令之后,你能够见见1个含有移动日志和共享站点外网访问路径的 Ngrok
界面。要是你想要自定义地区抑或此外 Ngrok 选项,你能够添加到 share
命令前面:

share homestead.app -region=eu -subdomain=laravel
  • 谨记,Vagrant 本质上是不安全的,当您运维 share
    命令的时候,你会把您的虚拟机揭示在互连网中。

七 、配置多站点

多个 PHP 版本

  • 以此特点仅与 Nginx 兼容。

Homestead 6 协理在同3个虚拟机上引入多个不等版本的 PHP。您须要在
Homestead.yaml 配置文件中为有些站点指明要求运用的 PHP 版本即可。 可用的
PHP 版本有:「5.6」、「7.0」、「7.1」

sites:
    - map: homestead.app
      to: /home/vagrant/Code/Laravel/public
      php: "5.6"

除此以外,您仍是能够透过 CLI 使用任何帮助的 PHP 版本:

php5.6 artisan list
php7.0 artisan list
php7.1 artisan list

经过homestead.yaml配置多站点,必要举行:

网络接口

Homestead.yaml 文件里的 networks 配置项允许你为 Homestead
环境布署网络接口。您可以依照须求计划任意数量的接口:

networks:
    - type: "private_network"
      ip: "192.168.10.20"

想要配置3个
桥接
接口的话,扩充 bridge 配置项,然后 type 填写为 public_network

networks:
    - type: "public_network"
      ip: "192.168.10.20"
      bridge: "en1: Wi-Fi (AirPort)"

想要配置一个
DHCP
接口的话,请从配置中移除 ip 选项:

networks:
    - type: "public_network"
      bridge: "en1: Wi-Fi (AirPort)"
vagrant provision

更新 Homestead

您能够不难的用多个步骤来更新 Homestead ,第1步,使用 vagrant box update
命令更新 Vgrant box :

vagrant box update

接下去。你供给更新 Homestead
的源代码,假设您是经过仿制仓库的主意来安装的 Homestead
,你能够在您最初克隆仓库的任务简单的运营 git pull origin master 命令。

设若你已经经过你的项目中的 composer.json 文件安装了 Homestead
,你应该认同你的 composer.json 文件中是不是带有 “laravel/homestead: “^4”
并且还要更新依赖:

composer update

此操作会重构数据库,并不推荐。可用以下命令来顶替,该命令可应用性的改观。

野史版本

假设你须要多少个旧版本的 PHP ,请在品尝利用旧版本 Homestead
在此以前,先读书文书档案 多个 PHP
版本。

你能够通过丰硕以下配置到您的 Homestead.yaml 文件来方便的遮盖 Homestead
使用的 box 版本:

version: 0.6.0

例如:

box: laravel/homestead
version: 0.6.0
ip: "192.168.20.20"
memory: 2048
cpus: 4
provider: virtualbox

当您利用旧版本的 box 时,你需求有限支撑 Homestead
源代码的版本与之相应,上面包车型地铁图样呈现了支撑的 box 版本,以及与之相应的
Homestead 的源代码版本和 box 所提供的 PHP 版本:

Homestead Version Box Version
PHP 7.0 3.1.0 0.6.0
PHP 7.1 4.0.0 1.0.0

 

Provider 的奇异装置

vagrant reload --provision

VirtualBox

Homestead 默认将 natdnshostresolver 设置为 on。那允许 Homestead
使用你的主机系统中的 DNS 设置。借使你想重写那表现,你能够在你的
Homestead.yaml 文件中添加上面这几行:

provider: virtualbox
natdnshostresolver: off

要么登录虚拟机,按nginx配置多站点的点子来开始展览。

翻译署名

用户名 贡献
WangYan 翻译

原稿链接:http://shouce.jb51.net/laravel-5-5/source/homestead.html\#configuring-homestead

如上办法都急需配备hosts文件,hosts文件的任务及效果,请参见:

 https://www.cnblogs.com/whx-blogs/p/9485445.html

 

③ 、下载安装使用外人的laravel项目

① 、参考以下链接:

  

 

待续……

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图