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

首先白以下几个概念

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

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

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

Homestead 生产出来的虚拟机提供了一个完整的开发环境, 有了这个环境, 就不用再担心各种软件的设置会搞乱你的操作系统啦.

因为是虚拟机, 出现故障的时候, 可以在几分种内完成销毁和重建.

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

在多人协同开的情况下, Homestead 能用来统一开发环境, 让程序员把精力更集中的放在程序业务逻辑上, 免去了各种因为开发环境不一样而造成的混乱.

约定

假设我们要开发一个项目, 项目的名字叫 mytwitter.

首先在我们存放代码的地方 code 文件夹里面创建项目根文件夹 mytwitter_project, 接下来咱们的操作都在此项目下进行

1

2

cd ~/codemkdir mytwitter_project

cd mytwitter_project

链接:https://pan.baidu.com/s/1v5gm7n0L7TGyejCmQrMh2g 提取码:x2p5

免费分享,但是X度限制严重,如若链接失效点击链接或搜索加群 群号518475424

安装 virtualbox 和 vagrant

在这里下载并安装 VirtualBox , Vagrant .

直接下载 GUI 安装包安装就行.

下载并配置 Homestead

Homestead 包括以下两个东西

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

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

克隆 homestead 项目

在文件夹下克隆 homestead 项目到本地

1

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

加入 homestead box

执行以下命令添加 box

1

vagrant box add laravel/homestead

在线下载会很慢一般用迅

可以下载最新的box文件

1

https://atlas.hashicorp.com/laravel/boxes/homestead/versions/0.5.0  //新版本地址

下载后执行以下命令, 修改 /path/to/virtualbox.box 为正确的 path.

1

vagrant box add laravel/homestead /path/to/virtualbox.box

windows中执行如下命令

1

vagrant box add laravel/homestead file:///D:/download/virtubox.box

修改 homestead 的配置

根据你的情况修改 Homestead 项目里面文件 Homestead.yaml , 类似以下

1

2

3

4

5

6

7

8

9

10

11

12

---ip: "192.168.10.10"memory: 2048cpus: 1authorize: /Users/me/.ssh/id_rsa.pub

keys:    - /Users/me/.ssh/id_rsa

folders:    - map: /Users/me/code/mytwitter_project/mytwitter

      to: /home/vagrant/mytwitter

sites:    - map: mytwitter.app

      to: /home/vagrant/mytwitter/public

variables:    - key: APP_ENV

      value: local

配置 hosts 文件

修改本机的 hosts 文件, 允许通过自定义域名访问, 这个域名是在上面的 Homestead.yaml 里面设置的.

1

sudo vi /etc/hosts

添加以下一行

1

127.0.0.1    mytwitter.app

初始化 homestead 虚拟机

1

2

3

4

5

cd Homestead

vagrant up

注意:要删除homestead目录下的 Vagrantfile 文件重新生成使用命令:vagrant init生成。

然后在启动

vagrant u

生成启动后看提示信息。

最后测试是否能成功连接, 虚拟机里的 ~/mytwitter 文件夹里的文件和本地的文件是一致的.

1

2

vagrant ssh cd ~/mytwitter

ll

浏览器访问 http://mytwitter.app:8000/ .

至此, 成功安装.

Laravel本地环境搭建:Homestead开发环境的部署的更多相关文章

  1. python环境搭建,开发环境

    一.从链接http://www.python.org/downloads/ 下载安装包,注意32位和64位安装包区别. https://www.python.org/downloads/windows ...

  2. Ionic 入门与实战之第二章第一节:Ionic 环境搭建之开发环境配置

    原文发表于我的技术博客 本文是「Ionic 入门与实战」系列连载的第二章第一节,主要对 Ionic 的开发环境配置做了简要的介绍,本文介绍的开发环境为 Mac 系统,Windows 系统基本类似,少许 ...

  3. windows环境搭建Vue开发环境

    一.安装node.js(https://nodejs.org/en/) 下载完毕后,可以安装node,建议不要安装在系统盘(如C:). 二.设置nodejs prefix(全局)和cache(缓存)路 ...

  4. win8.1 64位环境搭建android开发环境

    1.下载JDK,http://www.oracle.com/technetwork/java/javase/downloads/index.html,选择版本 2.安装刚刚下载的JDK 3.环境变量配 ...

  5. Java开发环境搭建——Idea开发环境

    Idea版本选择由于公司使用JDK7,所以我选择安装Version 2016.1.4(手动安装试验出来的,最新版的2016.1.4启动时提示需要安装JDK8)下载 其实可以安装多个版本的JDK,然后指 ...

  6. 使用Apache+Dreamweaver(或者H-builder)搭建php开发环境

    使用得工具说明 php+Apache服务器+Dreamweaver+mysql数据库 下载安装好wamp,可以在网上直接百度下载,为了方便,我给放个百度云的链接.wamp下载:链接:http://pa ...

  7. android 串口开发第一篇:搭建ndk开发环境以及第一个jni调用程序

    一:ndk环境搭建 1:开发环境 我使用的是android studio 2.3.3版本,搭建ndk开发环境比较简单,打开File----Settings----Appearance&Beha ...

  8. 腾讯云-搭建 JAVA 开发环境

    搭建 JAVA 开发环境 搭建 JAVA 开发环境 任务时间:18min ~ 20min 此实验教大家如何配置 JDK .Tomcat 和 Mysql 00.安装 JDK JDK 是开发Java程序必 ...

  9. 五分钟用Docker快速搭建Go开发环境

    挺早以前在我写过一篇用 `Docker`搭建LNMP开发环境的文章:[用Docker搭建Laravel开发环境](http://mp.weixin.qq.com/s?__biz=MzUzNTY5MzU ...

随机推荐

  1. .net基础加强

    1.冒泡排序 请通过冒泡排序法对整数数组{ 1, 3, 5, 7, 90, 2, 4, 6, 8, 10 }实现升序排序 , , , , , , , , , }; BubbleSort(num); C ...

  2. Winform中设置多条Y轴时新增的Y轴刻度不显示问题解决

    场景 Winform中实现ZedGraph的多条Y轴(附源码下载): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1001322 ...

  3. authenticating with the app store 一直卡住--问题记录

    参考链接:https://blog.csdn.net/csdn2314/article/details/90021367 authenticating with the app store 一直卡住最 ...

  4. 多版本切换python

    Python 安装包去官网自行下载: https://www.python.org/downloads/mac-osx/ Mac os 自带python, 但我记得是python2.7版本 在选择安装 ...

  5. SQLServer常用快捷键汇总

    菜单激活键盘快捷键 操作 SQL Server 2017 SQL Server 2008 R2 移到 SQL Server Management Studio 菜单栏 Alt Alt 激活工具组件的菜 ...

  6. 3.1 Spark概述

    一.Spark简介 1.Spark的特点 特点1:运行速度快(内存计算,循环数据流.有向无环图设计机制) 把所有针对数据集的操作转换成一张有向无环图,整个执行引擎调度都是基于这个有向无环图,对这个有向 ...

  7. zz——Recent Advances on Object Detection in MSRA

    本文由DataFun社区根据微软亚洲研究院视觉组Lead Researcher Jifeng Dai老师在2018 AI先行者大会中分享的<Recent Advances on Object D ...

  8. Redis和MySQL数据同步及Redis使用场景

    1.同步MySQL数据到Redis (1) 在redis数据库设置缓存时间,当该条数据缓存时间过期之后自动释放,去数据库进行重新查询,但这样的话,我们放在缓存中的数据对数据的一致性要求不是很高才能放入 ...

  9. win/zabbix_agent.conf

    # This is a configuration file for Zabbix agent service (Windows) # To get more information about Za ...

  10. Flask-Login中装饰器@login_manager.user_loader的作用及原理

    Flask-Login通过装饰器@login_required来检查访问视图函数的用户是否已登录,没有登录时会跳转到login_manager.login_view = 'auth.login'所注册 ...