前言

之前写过一篇文章(https://www.jianshu.com/p/5f30280a3c18),说不需要这玩意儿一样可以开发。是的,但是对于团队来说,使用统一的环境、开发工具、编码规范等,对于大型项目的维护、效率等有着莫大的作用。所以,homestead不可不学。

Homestead是什么

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

安装参考:https://d.laravel-china.org/docs/5.5/homestead#configuring-homestead

使用

文件夹同步设置

Homestead.yaml 文件的 folders 属性里列出所有与 Homestead 环境共享的文件夹。这些文件夹中的文件若有变更,它们会保持本地机器与 Homestead 环境之间同步。你可以根据需要配置多个共享文件夹

意思是我们本地的 文件夹:~/Code 会映射到 虚拟机的 /home/vagrant/Code,以后本地的文件夹中的改动都会同步到虚拟机。

站点配置

切换到 /Users/userName/.homestead

 对,打开Homestead.yaml
 
 
 
 
 
 
 
 
 
 
 

文件内容注意,ip地址指的是给虚拟机指定的ip,这个默认就可以了。不要改动。要注意的是,以后没添加一个域名,就要在host文件中填下类似如下映射 .

baidu.test 192.168.10.10

provider: virtualbox ,这里虚拟机也可以改为别的。

接下来看下站点,如下,你可以配置多个的

sites:

- map: www.myblog.io

to: /home/vagrant/Code/open/myblog/public

- map: www.mylaravelblog.app

to: /home/vagrant/Code/mywork/blogTutorial/public

- map: news.xx-china.org

to : /home/vagrant/Code/open/news.xx-china.org/public

数据库

databases:

- homestead

- testblog

数据库也可以配置多个,这里只是新建数据库的名字,真正的数据表在程序里面指定。

来一个例子

这里假设我们要添加一个invate.test 的网站

添加host文件

创建project

切换到~/Code目录

使用

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

或者

composer create-project laravel/laravel  invate  --prefer-dist "5.5.*"

启动虚拟机

vagrant up

访问站点

常见 homestead 命令

homestead up 启动

homestead destroy --force 销毁

homestead reload --provision 修改了站点配置,刷新重新加载

homestead box update 更新虚拟机

homestead halt 不销毁,停止

homestead 可以换成vagrant

转载:https://www.jianshu.com/p/61554e721963

homestead的更多相关文章

  1. 本地xdebug调试搭建 Laravel+homestead+phpstorm

    1.在homestead virtual box安装和配置xdebug 先在终端运行vagrant up 和 vagrant ssh,ssh远程到homestead,然后复制以下代码到一个shell文 ...

  2. Laravel [1045] 解决方法 Access denied for user 'homestead'@'localhost'

    这几天学习Laravel框架遇到了数据库方面的问题. PDOException in Connector.php line 55:SQLSTATE[HY000] [1045] Access denie ...

  3. Laravel Homestead安装笔记

    引言: 最近开始学习laravel框架,了解到有个laravel homestead的box,开发起来非常方便快捷,于是就准备开始配置homestead虚拟开发环境了 什么是Homestead 要想学 ...

  4. win10下 homestead 安装

    1.安装VirtualBox 和 Vagrant 2.git或者composer安装 homestead git clone https://github.com/laravel/homestead. ...

  5. homestead注意事项

    1.如何修改php.ini Here is how you grant read/write access to php.ini, modify it, save changes & relo ...

  6. vagrant homestead laravel 编程环境搭建

    这里面其实坑不少的,首先介绍 VirtualBox  虚拟机,windows下安装linux必须用的一个工具 vagrant 封装虚拟机的一个软件,可以设置好系统,安装好软件,什么时候用,直接导入就行 ...

  7. Laravel环境配置之安装Homestead

    laravel requirements: PHP >= 5.5.9   (机器上yum安装的是5.3.3) OpenSSL PHP Extension PDO PHP Extension Mb ...

  8. laravel homestead vagrant box安装使用,问题,及相关命令

    Vagrant is a tool that manages oracle virtual boxes 1.本地下载https://atlas.hashicorp.com/laravel/boxes/ ...

  9. 同时存在两个或多个homestead 虚拟box

    开发中发现,不同版本的homestead 里面的环境各不相同,里面的node,npm等版本都不一致,如果需要添加 不同版本的homestead同时存在可以按照以下办法处理. tips: 提供可以离线下 ...

  10. Laravel Homestead安装教程

    1/先在https://www.vagrantup.com  下载vagrantup ,对应平台下载,并安装,安装后可以在命令行使用vagrant https://www.vagrantup.com/ ...

随机推荐

  1. Wrong——Python

    1.向MySQL中插入时间(年月日时分秒),在时分秒处报错.在年月日与时分秒中间有个空格.解决办法:在sql语句中时间用一个" "包起来就可以了.. 2.在Ubuntu的cront ...

  2. VMware Tanzu Kubernetes Grid 1.3 发布 - VMware 构建、签名和支持的开源 Kubernetes 容器编排平台的完整分发版

    Tanzu Kubernetes 集群是由 VMware 构建.签名和支持的开源 Kubernetes 容器编排平台的完整分发版.可以通过使用 Tanzu Kubernetes Grid 服务在主管集 ...

  3. django2中namespace和name的使用

    django2中namespace和name的使用   一.在Django <= 1.11 我们通过关键词namespace参数定义名称空间 1.projects/urls.py   from ...

  4. 2021.5.23 noip模拟2(排序|划艇|放棋子)

    今天比昨天更惨,惨炸了 看到T1不会,跳!!! T2不会,再跳!!!! T3不会,后面没题了:::: 无奈无奈,重新看T1,然鹅时间已经过去了一个小时 然而我一想不出题来就抱着水瓶子喝水,然后跑厕所, ...

  5. 用OpenCV进行摄像机标定

    用OpenCV进行摄像机标定 照相机已经存在很长时间了.然而,随着廉价针孔相机在20世纪末的引入,日常生活中变得司空见惯.不幸的是,这种廉价伴随着它的代价:显著的扭曲.幸运的是,这些常数,通过校准和一 ...

  6. TensorRT 7.2.1 开发概要(下)

    TensorRT 7.2.1 开发概要(下) 1.2. Where Does TensorRT Fit? 一般来说,开发和部署深度学习模型的工作流要经过三个阶段. Phase 1 is trainin ...

  7. 二、Linux基本防护措施

    修改账户有效期 chage命令的语法格式: chage –l    账户名称                                //查看账户信息 chage –E 时间 账户名称      ...

  8. python通过字典实现购物车案例-用户端

    import os dict01 = { 'iphone' : { '5999' : { '总部位于美国' : '价格相对较贵', }, }, 'wahaha' : { '15' : { '总部位于中 ...

  9. Luat Inside | 多功能YAP物联网终端机,你不会还不知道吧?

    简洁高效是合宙产品的一个重要特点,合宙的工程师们用Demo取代繁杂的说明书,以便于开发者快速上手. 有没有可能把这个学习的过程变得更有趣,并且把技术入门难度进一步降低?作为一名Luat技术爱好者,我对 ...

  10. mybatis自定义打印执行时间并格式化sql插件

    打印SQL的执行时间,我们可以实现mybatis官方我们提供的接口org.apache.ibatis.plugin.Interceptor,我们可以拦截的类有多个Executor,StatementH ...