Laravel Homestead 开发环境

1 篇文章 0 订阅
1 篇文章 0 订阅

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

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

准备工作
安装 Vagrant 和 VirtualBox
一步步安装就好了,借着装git
安装 Git,window客户端直接安装

下载 Laravel Homestead box
https://app.vagrantup.com/boxes/search
下载之后可以改个名字 比如改成 homestead1

下载好之后就需要把 Homestead box 添加进来

vagrant box add laravel/homestead F:/MyDownloads/Download/homestead-7.2.1.box

homestead后面的是你下载下来的本地box位置

用命令查看到有 laravel/homestead 即添加成功

vagrant box list

拼下载 URL:

'https://app.vagrantup.com/laravel/boxes/homestead/versions/7.2.1' + '/providers/' + '供应商名字/' + '.box'

公式:下载链接 = 产品版本链接 + 供应商英文意思 + 要下载的供应商名称(如virtualbox)+’.box’

如上选择的是版本是 v7.2.1,生成的下载链接为 :

https://app.vagrantup.com/laravel/boxes/homestead/versions/7.2.1/providers/virtualbox.box

下载之后可以把名改了好区分:homestead-7.2.1,默认名字是:virtualbox.box

安装
1、添加 box

vagrant box add laravel/homestead F:/MyDownloads/Download/homestead-7.2.1.box

用命令查看到有 laravel/homestead 即添加成功

vagrant box list

列表中显示的laravel/homestead的版本号为0,我们要把它改成正确的版本号(7.2.1),可以打开用户目录下的~.vagrant.d\boxes\laravel-VAGRANTSLASH-homestead文件夹,找到以下路径:

~ .vagrant.d\boxes\laravel-VAGRANTSLASH-homestead

将文件夹中名为0的文件夹改名为我们下载的Homestead的版本号,即7.2.1。

然后在该文件夹下新建一个叫metadata_url的文件 (注意不要有任何文件名后缀,如果你的系统设置了自动隐藏后缀名,请将隐藏去掉,确认文件无任何后缀),文件添加一下内容

https://app.vagrantup.com/laravel/boxes/homestead

再次vagrant box list查看版本变了

2、克隆Homestead
在文件下执行命令,如D:/vagrant

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

接着在已经克隆下来的文件夹内,会发现bash init.sh,init.bat两个文件
如果是在win下,又安装了git bash,则运行bash init.sh,init.bat均可。
如果是在linux下,则运行bash init.sh

在文件夹Homestead下执行

cd Homestead/
bash init.bat	#winbash init.sh	#win、linux

执行完之后会产生文件:Homestead.yaml

3、配置Homestead.yaml


ip: "192.168.10.10"  				#虚拟机的ip,不用改动
memory: 2048						#虚拟机内存大小
cpus: 1								#虚拟机cpu数量
provider: virtualbox   				#提供虚拟机类型,用virtualbox装的一定要确认这里是virtualbox
authorize: ~/.ssh/id_rsa.pub    	#ssh的公钥,确认用户目录下有没有公钥
keys:
    - ~/.ssh/id_rsa   				#ssh的私钥
folders:  							#设置文件夹映射关系
    - map: D:/homestead   			#需要映射到的本地机器的文件夹,自己的目录  **刚开始默认的也可以**
      to: /vagrant/code				#需要映射到虚拟机中哪个的文件夹,虚拟机上的目录,没有就新建code
sites:
    - map: homestead.test			#站点虚拟域名
      to: /vagrant/code				#站点目录 下载好代码后 需要指向虚拟机上的盘符
databases:
    - homestead						#数据库

4、启动Homestead

vagrant up
或
vagrant up --provision  #启动虚拟机,让provisioning立即生效

遇到问题:

Stderr: VBoxManage.exe: error: Raw-mode is unavailable courtesy of Hyper-V. (VERR_SUPDRV_NO_RAW_MODE_HYPER_V_ROOT)
VBoxManage.exe: error: Details: code E_FAIL (0x80004005), component ConsoleWrap, interface IConsole

管理员身份运行cmd关闭Microsoft-Hyper-V即可

dism.exe /Online /Disable-Feature:Microsoft-Hyper-V

#提示重启选择y

如果需要开启Hyper-V虚拟化管理员身份运行cmd

dism.exe /Online /Enable-Feature:Microsoft-Hyper-V

5、登录Homestead

vagrant ssh

出现以下界面说明安装成功

其他操作

composer

输入composer会看到如下界面

说明虚拟机以内置好了composer,没有的话需要自己安装

安装之前配置下composer,不然安装起来会很慢

使用 Composer 镜像加速有两种选项:

1、全局配置,这样所有项目都能惠及(推荐);
2、单独项目配置;
1、全局配置(推荐)

composer config -g repo.packagist composer https://packagist.laravel-china.org

2、单独使用

如果仅限当前工程使用镜像,去掉 -g 即可,如下:


$ composer config repo.packagist composer https://packagist.laravel-china.org

修改镜像
全局配置:

composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

本项目配置:

composer config repo.packagist composer https://mirrors.aliyun.com/composer/

上面选择执行后再

composer install

安装laravel

1、首先,通过 Composer 安装 Laravel 安装器

cd /vagrant/code
composer global require "laravel/installer"

如果之前安装的是旧版的安装器,可以通过命令更新:

composer global update

2、新建应用的两种方法
2.1 通过简单的 laravel new 命令即可在当前目录下创建一个新的 Laravel 应用
如新建名称为 laravel 的项目,此种方法较慢。


laravel new laravel

2.2 通过 Composer Create-Project 安装 Laravel 应用(推荐)

可以指定要安装的版本:5.6

composer create-project laravel/laravel laravel5.6 --prefer-dist "5.6.*"

如果不是想要的版本直接更改就好
配置站点
需编辑Homestead.yaml文件的字段sites和本机hosts文件

编辑配置文件 Homestead.yaml,找到下面的地方,配置站点

sites:
    - map: homestead.test					#虚拟域名
      to: /vagrant/code/laravel5.6/public	#指向虚拟机的项目入口文件路径
1
2
3
配置本地hosts文件

192.168.10.10 homestead.test
1
重启服务

vagrant reload --provision
1
在浏览器访问域名:homestead.test,出现如下界面即配置成功


新增站点
修改Homestead.yaml文件

sites:
    - map: homestead.test					#虚拟域名
      to: /vagrant/code/laravel5.6/public	#指向虚拟机的项目入口文件路径
    - map: test.com
      to: /home/vagrant/code/test/public
1
2
3
4
5
修改本机hosts文件

192.168.10.10 homestead.test
192.168.10.10  test.com

每次修改Homestead.yaml之后需执行命令才能生效

vagrant reload --provision

MySQL连接

用本地连接数据库

ip:192.168.10.10
端口:3306
用户名:homestead
密码:secret

切换web服务器
自由切换Apache和Nginx,在Homestead 虚拟机执行命令:

flip

laravel的一些操作
控制台创建Controllers,在项目根目录执行命令:


php artisan make:controller Admin/IndexController

控制台创建Model,在项目根目录执行命令:

php artisan make:model Models/Article

每次修改文件composer.json需要在网站根目录执行以下命令:

composer dump-autoload

artisan命令参考:
https://learnku.com/articles/17014
启动服务器环境一般在 Homestead 目录下
C:\Users\admin\Homestead

开启虚拟机命令

vagrant up  #启动
vagrant ssh # 登录Homestead
vagrant halt #关闭虚拟机
vagrant status  #虚拟机状态
vagrant reload    #重启
exit # 重启之前 输入 exit 才能输入 vagrant 命令


常见问题composer 镜像源问题 composer php版本问题

Homestead.yaml文件 的配置问题
vagrant 和 VirtualBox 基本不会有问题 直接装好就好了 后续基本不动它 。主要操作在Homestead目录

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值