zoukankan      html  css  js  c++  java
  • laravel开发环境homestead搭建详解

    laravel开发环境homestead搭建详解

    常见的几种开发环境

    Laravel的开发环境其实很多,因为它本身就是PHP,所以只要满足版本的情况下,任何pHP环境他都能跑起来,比如说常见的wamp/mamp/phpstudy等集成化环境都是可以的,但是,为了更好的减少错误,更多的兼容,以后的上线环境,官方推荐了两种开发环境,一种是homestead,另一种是Valet。第1种呢,Windows系统和mac系统,都可以支持,第2种的专门就是为mac系统的用户所提供的,总体感觉两种环境都非常非常好用,今天我们就着重说一下第1种环境的搭建。

    homestead环境for windows

    Laravel 致力于让整个 PHP 开发体验变的更愉快,包括你的本地开发环境。 Vagrant 提供了一种简单、优雅的方式来管理和配置虚拟主机。

    Laravel Homestead 是一个官方预封装的 Vagrant box ,它为你提供了一个完美的开发环境,你不需要在本地机器安装 PHP、web 服务器和其他的服务器软件。你再也不用担心会弄乱你的操作系统了!Vagrant boxes 是一次性的。 如果出现问题, 你可以在几分钟内销毁并重新创建 box !

    Homestead 可以运行在任何 Windows、Mac、或 Linux 系统, 它包括了 Nginx web 服务器,PHP7.4、PHP 7.3、PHP 7.2、PHP 7.1、MySQL、PostgreSQL、Redis、Memcached、Node 以及你开发 Laravel 所需要的东西。

    1. 安装git

    下载地址:这里附上2.25.1版本下载

    git for windows 32位

    git for windows 64位

    也可到官方网站下载最新版:git官方
    安装好进行备用。

    2.安装虚拟机管理软件

    在你启动 Homestead 环境之前,你必须安装 VirtualBox 6.x,VMWare,Parallels 或 Hyper-V 以及 Vagrant。以上所有软件均针对不同的操作系统提供了易于使用的可视化安装包。

    我这里使用的是VirtualBox软件,https://www.virtualbox.org/wiki/Downloads 是 Oracle 公司的开源虚拟机软件。VirtualBox 号称是最强的免费虚拟机软件,它不仅功能齐全,而且性能也很优异!VirtualBox 支持大部分流行的系统,如:Mac, Windows, Linux 等。

    下载地址:下载地址

    选择window hosts即可下载,大小位100多MB,安装完毕备用。

    3. 安装Vagrant(管理虚拟机的工具)

    Vagrant by HashiCorp Vagrant 是用来管理虚拟机的工具,支持当前主流的虚拟机系统如 VirtualBox、VMware、AWS 等。Vagrant 的主要作用是提供一个可配置、可移植和复用的软件环境。Vagrant 让你通过编写一个 Vagrantfile 文件来控制虚拟机的启动、虚拟机网络环境的配置、虚拟机与主机间的文件共享,以及启动后自动执行一些配置脚本,如自动执行一个 Shell Script 来安装一些必备的开发工具,如安装配置MySQL、PHP,甚至是自动配置 Nginx 站点。这意味着,在一个多人开发的项目中,你只需要同步 Vagrantfile 文件,就可以保证参与项目的每个人各自的机器上拥有一致的开发环境。

    下载地址:下载地址

    大小200多MB

    4.安装Homestead box

    第一种--在线安装 Homestead Vagrant Box(不推荐)

    这样安装下载会非常慢,我安装了好多次都失败了,可以使用第二种本地文件安装方式

    vagrant box add laravel/homestead
    

    先打开git,然后打开~目录

    然后运行上述命令

    然后提示你选择paralles还是virtualbox

    选择2,然后就会进行在线安装

    第二种--本地文件安装(推荐使用)

    先下载离线 homestead.box ,大小1.25GB左右,这里附上下载地址:官方下载,官方页面homestead,官方页面,然后执行如下命令

    下载地址:下载地址
    官方网址:官方网址

    下载完成后放到本地目录,这里我放到g盘homestead目录下。
    然后在git中运行命令:

    vagrant box add laravel/homestead g:/homestead.box
    

    注意更改路径。
    等待安装完毕,显示如上图则已安装成功。

    5. 安装 Homestead 管理脚本

    首先clone管理脚本

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


    创建 Homestead.yaml 配置文件

    ./init.bat
    

    如果是本地安装的 homestead.box 版本为0,所以需要修改下面步骤生成的配置文件 /Users/xxxx/Homestead/scripts/homestead.rb 以下内容

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

    6.配置同步文件夹

    在~/Homestead目录下Homestead.yaml文件进行配置

    folders:
        - map: ~/code/code1
          to: /home/vagrant/code1
    
        - map: ~/code/code2
          to: /home/vagrant/code2
    

    这里就是把本地的文件同步到虚拟机,这样就能把源码放到本地,然后运行虚拟机就能看到效果,非常的方便。

    注意:

    这里有误区,有的人会直接配置如下:

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

    这样是无法同步成功的。

    不能直接同步到vagrant里,要同步到vagrant的子目录中。

    7.配置SSH 秘钥登录

    用于实现 SSH 免密码登录 修改 Homestead.yaml 文件以下内容:

    keys:
        - ~/.ssh/id_rsa
        - ~/.ssh/id_rsa.pub
    

    生成 key
    使用命令

    ssh-keygen -t rsa -C "xxxxxx@qq.com"
    #后面一真按enter键,设置密码
    

    8.连接数据库

    homestead 默认已经在虚拟机中为 MySQL 和 PostgreSQL 数据库做好了配置。要从主机的数据库客户端连接到 MySQL 或 PostgreSQL ,应该连接到 127.0.0.1 ,端口 33060 (MySQL) 或 54320 (PostgreSQL)。用户名和密码分别是 homestead / secret 。

    注意:只有从本地连接 Homestead 的数据库时才能使用这些非标准的端口。而 Laravel 在虚拟机中 运行时还是应该使用默认的 3306 和 5432 端口进行数据库连接。

    9.配置临时站点(域名)

    一旦你的 Homestead 环境已配置并运行,你可以为你的 Laravel 应用添加额外的 Nginx 站点。你可能希望在单个 Homestead 环境运行多个 Laravel 安装。要添加额外的站点,到 Homestead.yaml 文件中添加站点:

    sites:
        - map: homestead.test
          to: /home/vagrant/code1/public
        - map: homestead2.test
          to: /home/vagrant/code2/public
    

    这时候,还需要你把本机的hosts文件添加如下两条

    192.168.10.10  homestead.test
    192.168.10.10  homestead2.test
    

    10.配置全局命令

    Git for Windows环境中使用

    如果我们想在任何目录都可以执行 vagrant 命令,需要进行以下设置 修改 ~/.bash_profile 文件内容,这种设置只在 git for windows 软件中使用

    function homestead() {
        ( cd ~/Homestead && vagrant $* )
    }
    

    这样我们就可以使用 homestead up 等方式执行了。

    11.常用命令

    以下这些都是常用命令,如果已经配置全局,命令,可以不进入homestead文件夹内操作,所有命令vagrant换成homestead即可。

    启动

    cd ~/Homestead && vagrant up
    

    改动配置,重载配置

    vagrant reload --provision
    

    关闭

    vagrant halt
    

    通过 SSH 登录 vagrant(需要先启动 vagrant)

    vagrant ssh
    

    查看目前安装的box列表

    vagrant box list
    

    删除box镜像

    vagrant box remove laravel/homestead
    

    删除指定版本

    vagrant box remove laravel/homestead --box-version 6.4.0
    

    查看当前 Homestead 虚拟机的状态。

    vagrant status
    

    完成以上操作,基本满足开发需求,更多内容,请前往官网自行探求。

    原文地址:https://www.wjcms.net/archives/laravel%E5%BC%80%E5%8F%91%E7%8E%AF%E5%A2%83homestead%E6%90%AD%E5%BB%BA%E8%AF%A6%E8%A7%A3

    关注我更多精彩

  • 相关阅读:
    函数调用与参数传递总结(完成)
    序列总结
    python中如何调用.py文件
    反射获取Class对象的方式有哪些,反射创建对象的方式有哪些
    Dubbo的协议
    长连接和短连接
    hashset 和 treeset
    说说你对java中GC机制的理解
    找不着 jdbc 配置文件解决方案
    web.xml标准配置
  • 原文地址:https://www.cnblogs.com/wjcms/p/13226008.html
Copyright © 2011-2022 走看看