首先明白以下几个概念

VirtualBox  -- Oracle 公司的虚拟机软件, 能运行在当前大部分流行的系统上;

Vagrant 提供一种命令行接口, 允许自动化安装虚拟机, 并且因为是脚本编写成的 provision 文本文件, 给共享虚拟机配置提供了可能, Homestead 正是构建在 Vagrant 之上;

Laravel Homestead 是官方预封装的一个 Vagrant Box,它是一台虚拟机的原型, 用来快速生产一个配置完整的服务器虚拟机, 运行在 VirtualBox 上.

Homestead 包括以下两个东西

1、一个 vagrant box 虚拟机, 里面软件什么都下载好了;

2、Github 代码库, 里面装载着 vagrant 的配置脚本, 用来自动化配置网络, 端口映射, 等一些开发时候用到的配置;

Homestead 能运行在所有的Windows、Mac和Linux上,它包含了Nginx、PHP7.1、MySQL、Redis、Memcached和你开发 Laravel应用程序需要的所有其它软件。

简而言之就是使用 vagrant 将 laravel Homestead 环境安装在 VirtualBox 上,本地的项目目录与虚拟机的项目目录实时同步,从而可以实现 windows 上的 linux 开发

下面是安装步骤:

1、安装 virtualbox 和 vagrant

下载并安装 VirtualBox , Vagrant ,点击下一步安装,其间会要求重启电脑。

2、下载并配置 Homestead

在终端使用下面的命令将 laravel/homestead Box 添加到 Vagrant 中安装

vagrant box add laravel/homestead

速度很慢,大概在一个小时左右

进入项目目录,假设在E盘下的 code 目录,在命令行敲下命令:

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

由于 Homestead 的 master 分支并不是稳定分支,你应该用打过标签的稳定版本

cd Homestead

git checkout v6.1.0

克隆 Homestead 代码库后,从 Homestead 目录中运行 init.bat命令来创建 Homesstead.yaml 配置文件。 Homesstead.yaml 文件会被放置在你的 Homestead 目录中:

// Windows...
init.bat // Mac / Linux...
bash init.sh

3、配置 Homestead

打开 Homestead.yaml 文件,如下

主要改共享文件夹的 map 和站点配置 map

配置共享文件夹

map对应本地laravel项目所在的目录

配置 Nginx 站点

站点配置为项目的域名,如test.app

4、修改hosts

192.168.10.10   test.app

5、在code目录,使用composer下载最新的laravel5.5,这里的项目名与共享文件夹的 map对应

composer create-project --prefer-dist laravel/laravel  code

6、启动 Vagrant Box

从 Homestead 目录运行 vagrant up 命令。Vagrant 将启动虚拟机并自动配置你的共享文件夹和 Nginx 站点。

7、浏览器访问 test.app

至此, 成功安装.

ssh连接虚拟机连接信息:

IP:127.0.0.1
端口号:2222
用户名:vagrant
密码:vagrant 数据库连接信息:
IP:127.0.0.1
端口号:33060
用户名:homestead
密码:secret 问题汇总:
1、如果出现谷歌浏览器访问不了域名的情况

解决办法:将域名后缀改为test或者com等,不要使用app
修改配置文件以后使用vagrant reload --provision重启 2、如果你遇到 vagrant up 后卡在 SSH auth method: private key 的情况,你可以参照:homestead安装问题汇总
												

Laravel5.5 的 Homestead 开发环境部署的更多相关文章

  1. Laravel 的 Homestead 开发环境部署

    ---恢复内容开始--- Laravel 努力在整个PHP开发过程中提供令人愉快的开发体验,当然也包括本地的开发环境. 首先明白以下几个概念 VirtualBox -- Oracle 公司的虚拟机软件 ...

  2. Laravel本地环境搭建:Homestead开发环境的部署

    Laravel框架在php开发过程是不断进行优化的,当然也包括了本地环境的开发,下面我们就来具体看看laravel框架中的Homestead 开发环境的部署内容. 首先白以下几个概念 VirtualB ...

  3. 一个CentOS7的开发环境部署,包括防火墙|VPN|多IP多网关|HTTP代理服务器设置等

    http://www.lenggirl.com/code/centos7.html layout: post title: "一个CentOS7的开发环境部署,包括防火墙|VPN|HTTP代 ...

  4. 西秦的ACE-Python教程 一、Python本地开发环境部署

    西秦的ACE-Python教程 一.Python本地开发环境部署       西秦 级别: 论坛版主 发帖 1357 云币 2782 加关注 写私信   只看楼主 更多操作楼主  发表于: 10-10 ...

  5. 【J2EE】struts-2.3.16.3+apache-tomcat-8.0.9开发环境部署,“Hello World”的实现。

    1.在官网下载Struts2的开发包 下载链接如下: http://120.203.229.30/5ff/2bc79/5ff16ae8698e1c321758a8f03a1bc0939892bc79/ ...

  6. Electron开发环境部署

    Electron开发环境部署 安装node.js 可以从node.js官方网站上获取安装包,并进行安装,安装完可以通过 ndoe -v 指令进行版本查看. 本文的开发环境为node.js 4.4.5. ...

  7. linux 下 ifcfg-eth0 配置/CentOS_minimal安装和开发环境部署

    CentOS_minimal安装和开发环境部署:http://www.th7.cn/system/lin/201305/39002.shtml 网络接口配置文件 [root@localhost ~]# ...

  8. eclipse+hbase开发环境部署

    一.前言 1. 前提 因为hbase的运行模式是伪分布式,需要用到hdfs,所以在此之前,我已经完成了hadoop-eclipse的开发环境搭建,详细看另一篇文章:hadoop开发环境部署——通过ec ...

  9. Linux——Django 开发环境部署(二)python版本控制器pyenv

    python版本控制器pyenv 之前的 那篇是说明了django环境的site package完全独立出来了,但是使用的python解释器还是系统的,为了继续独立出来,甚至是达到ruby的rvm的自 ...

随机推荐

  1. js 向form表单中插入数据

    var newElement = document.createElement("input"); var nowtime=year+""+month+day+ ...

  2. CSS3 radial-gradient 径向渐变属性 实现重复半圆角内边框

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAA8gAAADiCAIAAAAd73mYAAAG+ElEQVR4nO3dQQrkNhCG0TntHGGu4U ...

  3. 6.前端基于react,后端基于.net core2.0的开发之路(6) 服务端渲染(SSR)

    0.源码地址 https://gitee.com/teambp/ScaffoldClient  这个地址下载对应源码. 1.服务端渲染是啥? 就是在服务器进行页面渲染(废话),当页面展示后,显示的就是 ...

  4. mysql启动日志文件log_bin

    今天正在无所事事的时候,突然收到需要我打开mysql的log_bin,当时我就懵逼了...不多说别的,我连这个log_bin在哪里,怎么知道是否启动了都不知道,怎么去做? 在万分纠结下,查询了很多资料 ...

  5. Spring入门之IOC

    IOC/DI: Spring最核心的灵魂,IOC/DI(控制反转/依赖注入)!,这里一定要理解他,理解这个思想.我会细说什么是IOC/DI.他的思想是什么.它带来了那些好处. 进入正题,先说说什么是i ...

  6. windows系统操作

    1.怎么更新补丁 有些软件的运行需要windows要安装相关的补丁,除了去微软官网下载补丁外,可以用windows自带的“系统更新”来完成,省去找补丁下载以及研究系统缺少哪些补丁. 控制面板--> ...

  7. 快速了解Hibernate的使用

    了解hibernate的使用 hibernate是作用于传统的mvc开发dao层的框架 在以往的开发中我们如何的编写dao的代码呢 1.原始的jdbc操作,在dao中到操作Connection/Sta ...

  8. 成功破解邻居的Wifi密码

    // 这是一篇导入进来的旧博客,可能有时效性问题. 默认配置的路由器,8位以下密码,黑客几分钟就可以破解.以前用自己的路由器做过实验,这次真正实践成功.环境:Kali Linux工具集:aircrac ...

  9. vue.js之路由

    Vue.js本身只提供数据与视图绑定及组件化等功能,如果想用它来开发一个完整的SPA(单页面应用),我们就还需要使用一些Vue.js的插件.今天我学习一种叫做Vue-router的插件,用来提供路由管 ...

  10. 从头开始基于Maven搭建SpringMVC+Mybatis项目(3)

    接上文内容,本节介绍基于Mybatis的查询和分页功能,并展示一个自定义的分页标签,可重复使用以简化JSP页面的开发. 从头阅读传送门 在上一节中,我们已经使用Maven搭建好了项目的基础结构,包括一 ...