windows8配置homestead及laravel开发环境

准备工具

一般来说,在windows上配置开发环境是一个很艰苦的事情。而vagrant的出现则是我们开发者的一个福利。大大的减轻了我们的配置的复杂新,但是虽然有所减轻,但还是要动手配一些的。话不多说,下面开始进入正题,首先来说下需要一些什么:

  1. windows已经装好了git,如果没装,点这里
  2. 需要安装好php(只需要php,其他的都不需要,并且在php.ini里面开启openssl扩展)。
  3. 然后需要composervagrantvirtualbox 以及一个homestead。 以上就是配置环境所需的全部软件,下面我们来配环境。

配置流程

简而言之,Homestead是laravel官方预封装好的一个基于virtualbox的linux虚拟机,在这个虚拟机里面安装好了一系列的软件Nginx、PHP 5.6、MySQL、Postgres、Redis、Memcached,足够laravel的开发。这个虚拟机可以很方便的启动,销毁,和重建。基本不会把你现有的操作系统搞得乱七八糟。下面简单说下安装流程:

Composer安装

Composer是php的一个依赖管理的工具,可以很方便的管理laravel开发过程中所需的一系列的扩展。是一个很重要的工具。直接打开上面下载的安装包安装就行,如果出现了错误,估计是没有在php里面开启ssl,重新开启一下就可以安装成功。

Vagrant以及VirtualBox安装

这两个也都是基于图形界面安装的,直接安装就行。需要说明的是要使用Virtualbox就需要开启硬件虚件支持(VT-X),在BIOS里面开启。

配置虚拟机

所需要的软件基本都安装完成了,接下来就是需要配置虚拟机了。

  1. 将homestead加入到virtualbox中,在终端中运行以下代码(path是自己放置homestead的路径):

      vagrant box add laravel/homestead path\homestead.box
    
  2. 安装homestead命令行工具:

    composer global require "laravel/homestead=~2.0"

    一般在这里会出现一个ssl错误,这个是由于咱们的特殊的国情造成的,你们懂得,解决办法是使用国内的镜像,按照这里 的方式在composer.json里面增加国内的镜像,再次执行以上的代码,就能够顺利的完成安装了。

  3. 初始化homestead

    homestead init 执行后生成C:\Users<username>.homestead,homestead的配置文件就在里面了。

  4. 修改Homestead.yaml

    ip: "192.168.10.10" memory: 2048 cpus: 2

    authorize: ~/.ssh/id_rsa.pub

    keys: - ~/.ssh/id_rsa

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

    sites: - map: homestead.app to: /home/vagrant/Code/laravel/public hhvm: true

    databases: - homestead

    variables: - key: APP_ENV value: local LaravelWorkspace是一个代码共享区,在这里所做的修改立马就能反映到虚拟机里面去。其他的是一些包括站点和数据库的配置,具体的一些细节大家可以去laravel的官网看看详细的细节介绍。 然后上面的那个ssh密钥是要通过gitbash生成的,如下:

    ssh-keygen -t rsa -C "your@email.com" 那个站点需要在windows的C:\Windows\System32\drivers\etc\hosts文件里面添加如下配置:

    192.168.10.10 homestead.app

  5. 启动虚拟机

    homestead up 执行以上代码一段时间之后,就应该可以看到虚拟机被启动起来了,然后通过 http://homestead.app:8000 或者192.168.10.10去访问你的laravel项目的首页了。

Homestead ssh问题

本来环境在上一步就已经配置完成了,可是在windows上,命令行能力实在是有限,没有办法支撑起开发需求,因为windows命令行不支持ssh访问。这个确实比较蛋疼。大家当然也可以使用其他的ssh工具来访问虚拟机(用户名和密码都是vagrant).这里给大家推荐一款更强大的工具,就是chrome的secure shell,在网页上的终端,见过没。用这个就能很方便的去访问ssh,咱们的开发需求到这里也基本被满足了。

微信公众号

© 2018 ray