美文网首页Laravel开发实践程序员Laravel
在windows10下安装Laravel/Homestead ,

在windows10下安装Laravel/Homestead ,

作者: ankyliu | 来源:发表于2017-09-22 01:20 被阅读202次

    最近玩了一下Laravel Homestead,发现不少朋友在安装使用的过程都或多或少遇到一些个坑。把这过程和我遇到的坑做一个记录。希望对大家有帮助;

    我的安装环境是:win10 x64 home版
    配合使用cmder完整版
    安装最新的 Laravel/homestead (当前应该是3.0.0)


    安装的过程

    总的过程和Laravel5.5的官方文档一样:
    1、安装最新版的VirtualBox(我是x64的,所以下x64版本):virtualbox下载
    Win10下安装VirtualBox完全没有难度,只有一个地方需要注意,就是否让Virtualbox关联相关文件,默认是选中的,可以不用选,不然可能会影响win10下双击打开.vhd文件。如果你没有用过.vhd文件,可以不管,全默认安装下去即可。


    2、安装Vagrant 最新版(当前是2.0最新):Vagrantup下载
    安装Vagrant一样没有难度,默认安装,装完最后重启一下,点确认重启前请一定先保存当前电脑没保存的工作。


    3、通过Vagrant 下载Laravel/Homestead的box镜像 ( 第一个坑 )
    官方文档的命令是,win10也是直接在cmd窗口输入:vagrant box add laravel/homestead
    按官网以咱大局域网的速度,15个小时下不完,保不准中间还会断,建议还是用下载工具直接把包下到本地吧。下载地址:vagrant homestead virtualbox 版 3.0
    这个下载地址是在执行:vagrant box add laravel/homestead 后选择这个命令时揭示的

    怎么得到box的下载地址? 4、在下载这个包后,可以再win10的cmd 窗口:
    vagrant box add laravel/homestead d:/virtualbox.box
    注意这个d:/virtualbox.box的对应实际路径,无意外的话就很顺利的安装完成,在cmd窗口输入:
    vargrant  box list
    可以看到:laravel/homestead (virtualbox, 0),说明成功了。先别开心,才成功了一步。

    5、开始下载安装homestead(第二个坑)
    首先,homestead这个目录可以自己决定放哪,比如我放在D:\VirtualBox\Homestead
    在CMD中进到D:\VirtualBox就可以了,不要再建Homestead目录,DOS命令如下:
    d:
    cd D:\VirtualBox
    git clone https://github.com/laravel/homestead.git Homestead
    执行成功就会看到:Homestead目录被自动创建了,文件都下好了。然后继续在这个目录下dos:
    init.bat 
    完成初始化,这个坑点在于:homestead目录可以自己定,而且还要要先安装git工具,不然执行不了。其实,不装也git可以,直接去下载包来解压到这目录也行

    配置 Homestead

    1、配置共享文件夹

    用文本编辑器打开D:\VirtualBox\Homestead下的: Homestead.yaml yy (如果没有,说明你没有成功执行init.bat)
    找到里边的:

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

    sites:
    - map: homestead.app
    to: /home/vagrant/code

    改成:

    folders:
    - map: D:/web/Laravel
    to: /home/laravel
    type: "nfs"

    sites:
    - map: homestead.app
    to: /home/laravel/public

    注意前面的空格,简书的编辑器过滤了。原文件中前面是有空格的,不能多不能少。按他原来的空格数。我已经事先把Laravel5.5下载解压到了我的D:/web/Laravel目录下,这段的意思是把D:/web/Laravel虚拟成linux目录/home/laravel,然后在Nginx中创建虚拟主机,绑定域名为homestead.app,绑定到目录是linux的/home/laravel/public ,其实也就是我本地电脑的D:/web/Laravel/public目录。

    关于为什么要用NFS方式?
    参考:让Vagrant在Windwos下支持使用NFS/SMB共享文件夹从而解决目录共享IO缓慢的问题

    第三个坑),Vagrant官方文档说win下不支持nfs共享,但我试了,可以通过安装vagrant-winnfsd这个插件来实现,CMD窗口输入执行:

    vagrant plugin install vagrant-winnfsd

    会自动安装好所需的插件

    (第四个坑),Vargent配置中的IP,在Homestead.yaml下,默认是

    ip: "192.168.30.10"

    这个ip要改成跟当前主机不同个ip段的,不然可能启动不了。

    (第五个坑),配置完好可可以启动了,在DOS窗口:

    d:
    cd D:\VirtualBox|Homestead
    vagrant up

    如果成功,基本就没问题了,如果不成,你可能会遇到:

    1、提示你没有ssh key

    提示代码忘记抓了,大概意思就是没有私有key,要重新生成一下:

    ssh-keygen -t rsa -C"your_email@example.com"

    如果执行不了,建议下载cmder完整版,里边集成了git工具
    参考:http://blog.csdn.net/u014702999/article/details/52779319


    2、提示你laravel/homestead还没有安装,又重新给你下载:

    大概的提示是:

    default:Box'laravel/homestead'could notbefound. Attemptingtofindandinstall...

    这个问题太奇怪了,也有解决办法

    文件编辑器打开 Homestead/scripts/homestead.rb

    config.vm.box_version = settings["version"] ||= ">= 3.0.0"

    改为

    config.vm.box_version = settings["version"] ||= ">= 0"

    保存,就能解决这个问题了

    到这,基本我遇到 的坑都解决了。

    可以通过浏览器中输入虚拟机的IP来访问到Laravel了。

    相关文章

      网友评论

      • 59ffd6a9654c:跟着你,坑真的全部都踩了一遍。。。。谢谢~~

      本文标题:在windows10下安装Laravel/Homestead ,

      本文链接:https://www.haomeiwen.com/subject/pzfxextx.html