美文网首页
laravel/homestead的安装

laravel/homestead的安装

作者: 云龙789 | 来源:发表于2018-07-09 14:53 被阅读25次

    laravel官网-Laravel Homestead阶段

    Vagrant介绍-从使用到放弃再到掌握完全指南

    准备工具

    • 第一步,安装虚拟机-VirtualBox
    • 第二 步,下载vagrant
    • 第三步,安装完毕vagrant之后,运行vagrant box add laravel/homestead
      运行第三步的时候,要下载的时间会比较长,可以把那个连接自己直接下载,下载之后,你如我们给它更新名字为homestead.box。这个box应该是有1点多G,下载后可以直接运行vagrant box add laravel/homestead homestead.box,加载效果是一样的
    • 第四步,把homestead克隆到本地git clone https://github.com/laravel/homestead.git ~/Homestead
      此时我们举例homestead下载到了~/Homestead文件下面
    • 第五步,创建Homestead.yaml配置文件
    1.cd  ~/Homestead
    
    2.// Mac / Linux...
    bash init.sh
    2.// Windows...
    init.bat
    

    此时会生成一个Homestead.yaml文件就是配置文件

    folders:  # 文件映射
        - map: ~/code   # 本地文件
          to: /home/vagrant/code   # 虚拟机对应的文件
    
    sites:  # 站点映射
        - map: homestead.test  #站点名称
          to: /home/vagrant/code/Laravel/public  # 站点对应的虚拟机文件
    

    host文件更新

    192.168.10.10  homestead.test
    

    运行vagrant up启动后,访问http://homestead.test即可成功

    数据库名和密码分别是homesteadsecret

    名词解释

    1.vagrant

    Vagrant是用来管理虚拟机的,如VirtualBox、VMware、AWS等,主要好处是可以提供一个可配置、可移植和复用的软件环境,可以使用shell、chef、puppet等工具部署。所以vagrant不能单独使用,如果你用它来管理自己的开发环境的话,必须在自己的电脑里安装了虚拟机软件,我使用的是virtualbox。

    Vagrant提供一个命令行工具vagrant,通过这个命令行工具可以直接启动一个虚拟机,当然你需要提前定义一个Vagrantfile文件,这有点类似Dockerfile之于docker了。

    跟docker类比这来看vagrant就比较好理解了,vagrant也是用来提供一致性环境的,vagrant本身也提供一个镜像源,使用vagrant init hashicorp/precise64 就可以初始化一个Ubuntu 12.04的镜像。

    2.Boxes

    Vagrant的基础镜像,相当于docker images。可以在这些基础镜像的基础上制作自己的虚拟机镜像。

    $ vagrant box add hashicorp/precise64

    在Vagrantfile中指定box

    Vagrant.configure("2") do |config|
      config.vm.box = "hashicorp/precise64"
      config.vm.box_version = "1.1.0"
    end
    

    分布式环境

    开发分布式环境下的应用时往往需要多个虚拟机用于测试,这时候才是vagrant显威力的时候。

    定义多个主机

    Vagrant.configure("2") do |config|
      config.vm.provision "shell", inline: "echo Hello"
    
      config.vm.define "web" do |web|
        web.vm.box = "apache"
      end
    
      config.vm.define "db" do |db|
        db.vm.box = "mysql"
      end
    end
    

    这个比较复杂,详见 官网multi-machine

    注意事项

    • 启动vagrant up的时候,可能出现错误1.png

    这个是因为homestead.box的版本号不符号>=6.0.0 所以此处改为>=0即可

    查看box版本号 错误1.png
    • 安装完毕后,账号密码都是vagrant 数据库homestead 密码secret

    如果没有完全启动,你就退出了,再次启动可能会报错


    报错 解决

    可以看解决步骤

    首先运行vagrant global-status找到正在运行的id,我的是57094f6
    然后运行vagrant destroy 57094f6
    当我们再次运行vagrant global-status的时候,就发现没有运行的homestead了。这个时候可以启动了vagrant up
    可是我发现还是不行,于是我把名字homestead-7改成了homestead-8就可以了

    图片.png

    但是最好的方式还是直接启动虚拟机,删除即可。
    对了,正常情况下运行homestead是不需要启动虚拟机的

    图片.png
    图片.png
    图片.png

    相关文章

      网友评论

          本文标题:laravel/homestead的安装

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