Laravel 虚拟开发环境Homestead安装

简介

Laravel Homestead 是一个官方预封装的 Vagrant box,它为你提供了一个完美的开发环境,你无需在本地安装 PHP ,web 服务器,或其他服务软件。并且不用担心系统被搞乱! Vagrant box 是完全一次性的。如果有什么地方出错了,你也可以在几分钟内销毁并重建 box !

Homestead 可以运行在 Windows 、 Mac 或 Linux 系统上,并且里面包含了 Nginx Web 服务器、 PHP 7.1 、 MySQL 、 Postgres 、 Redis 、 Memcached 、 Node 、 以及所有利于你开发 laravel 应用的其他程序。

下载安装包

在你启动你的 Homestead 环境之前,你必须安装VirtualBox 5.1、 VMWare或Parallels的其中之一,以及Vagrant。本次采用的VirtualBox 5.1。下面提供了本次需要的安装包下载地址。

VirtualBox-5.1.24-117012-Win.exe 密码:mnry
vagrant_2.0.1_x86_64.msi 密码:tvkk
laravel-VAGRANTSLASH-homestead.rar 密码:63cr(只针对使用Virtualbox)

安装

(1)安装vagrant,vagrant属于跨平台应用,我的系统是win10。安装成功后可以在cmd中输入 vagrant。看到如下图说明安装成功。

(2)安装Virtualbox,直接按照提示安装即可。

(3)安装 Homestead Vagrant Box

vagrant box add laravel/homestead

原本只要如上的命令即可,但由于国内众所周知的网络原因,我们不得不考虑先下载好的box再来添加。上面提供的"laravel-VAGRANTSLASH-homestead.rar"(只针对使用Virtualbox)就是下载好的vagrant box。

解压后将整个文件夹复制到 .vagrant.d/boxes 文件夹中(.vagrant.d文件夹在系统盘的用户文件夹对应的系统用户文件夹,我的是C:\Users\Administrator.vagrant.d),完成后在cmd中输入 vagrant box list,可以看到如下图说明vagrant box安装成功。

(4)安装 Homestead,选择你的工作目录,使用git bash克隆Homestead

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

一旦你克隆完 Homestead 的代码仓库,即可在 Homestead 目录中运行 bash init.sh 命令 来创建 Homesstead.yaml 配置文件:

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

// Windows...双击运行
init.bat

运行完成后,Homesstead.yaml 文件会被放置在你的 Homestead 目录中。

配置 Homestead

(1)配置你的提供者,Homestead.yaml 中的 provider 参数设置取决于你用的是哪一个 Vagrant 提供者 virtualbox 、 vmware_fusion 、 vmware_workstation ,或者 parallels 。你可以根据自己的喜好来设置提供者,这里选择的是virtualbox 。

provider: virtualbox

(2)配置共享文件夹,你可以在 Homestead.yaml 文件的 folders 属性里列出所有想与 Homestead 环境共享的文件夹。这些文件夹中的文件若有变更,它们将会在你的本机电脑与 Homestead 环境自动更新同步。你可以在这里设置多个共享文件夹,这里我在Homestead文件夹中创建了code文件夹用来共享。

folders:
    - map: F:/Homestead/code        //对应Homestead文件夹的路径
      to: /home/vagrant/code

(3)配置 Nginx 站点,对 Nginx 不熟悉吗?没关系。sites 属性可以帮助你可以轻易指定一个 域名 来对应到 homestead 环境中的一个目录上。在 Homestead.yaml 文件中已包含了一个网站设置范本。

sites:
    - map: homestead.app   //域名
      to: /home/vagrant/code/laravel/public    //对应Nginx 虚拟机的laravel安装目录

如果你在 Homestead box 配置之后更改了 sites 属性,那么应该重新运行 vagrant reload --provision 来更新 Nginx 配置到虚拟机上。

(4)配置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 文件中设置的相同。

启动 Vagrant Box

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


如果你出现如下情况:

我们根据提示,貌似是ssh的key没有生成,于是我们要运行如下命令,这个命令可以在git bash下生成。

ssh-keygen

启动成功之后我们可以打开Virtualbox,我们可以看到:

登录vagrant并安装laravel

(1)我们可以用cmd命令行进入Homestead目录,使用如下命令连接,如果使用Virtualbox开启登录需要用户名跟密码,都是 vagrant

vagrant ssh

(2)安装laravel,我们一般是通过composer来进行安装,在Homestead.yaml中我们配置的目录是 to: /home/vagrant/code/laravel/public ,因此我们要进入code目录下安装,输入如下命令:

cd /home/vagrant/code
composer create-project --prefer-dist laravel/laravel

如果要下载其他版本,比如5.3版本,可以使用这个命令:

composer create-project --prefer-dist laravel/laravel blog 5.3.*

(3)完成后测试laravel是否安装成功,

cd /home/vagrant/code/laravel
php artisan

(4)重开一个cmd运行程序,进入Homestead目录重新运行 vagrant reload --provision 来更新 Nginx 配置到虚拟机上,之后我们可以在Homestead/code文件夹中看到下载的laravel代码。这是在浏览器中通过该域名访问站点了:

http://homestead.app

(5)访问 提示No input file specified,这个可能是laravel的安装目录与Homestead.yaml中配置的目录不一致,或者是Homestead.yaml中配置的目录出现了大写字母。因为在虚拟机中的目录都是小写字母的。修改完成之后进入Homestead目录重新运行 vagrant reload --provision 来更新 Nginx 配置到虚拟机上。

查看原文>> 曼巴童鞋 - 博客 - Laravel 虚拟开发环境Homestead安装

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,219评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,363评论 1 293
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,933评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,020评论 0 206
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,400评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,640评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,896评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,597评论 0 199
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,327评论 1 244
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,581评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,072评论 1 261
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,399评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,054评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,083评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,849评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,672评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,585评论 2 270

推荐阅读更多精彩内容