homestead安装相关的文件:
链接:https://pan.baidu.com/s/1ABAAnvPANY6258Y4fnqQ3g
提取码:ru69
1.安装virtualbox
一路向下,完成
2.安装vagrant
一路向下,完成
3. 导入laravel/homestead盒子
国内由于墙的原因,安装非常的慢,几乎不能下载完成。我已经把包上传到百度云盘了。
建议使用下面的几个软件,virtual6.1用起来比较麻烦。因为vagrant2.2.6只能支持到virtualbox6.0.*,要用6.1的需要自己额外改一些东西。我只能搞到2.2.6的vagrant,2.2.7已经可以支持virtualbox6.1了,如果你已经安装了virtual6.1,那就按照我走过的路修改一下对应的文件,参考我的另外一篇文章也能行。
下载好了laravel/homestead之后,进到包含.box的文件夹,运行下面这个命令,就会自动安装了。
vagrant box add metadata.json
不出意外就是下面这个图了:
4.安装 Homestead 管理脚本
git clone https://github.com/laravel/homestead.git ~/Homestead
国内优化版:
git clone https://github.com/laravel/homestead.git ~/Homestead
5.配置 Homestead.yaml 文件
- provider:这个是虚拟机驱动,我们用的是virtualbox,有的人是vm或者 hyperv
- authorize:ssh验证方式,默认就是公钥验证
- keys:ssh密钥
- folders:目录挂载,项目目录
- sites:网站配置
- features:需要的软件包
我自己在用的:
---
ip: "192.168.10.10"
memory: 2048
cpus: 2
provider: virtualbox
authorize: ~/.ssh/id_rsa.pub
keys:
- ~/.ssh/id_rsa
- ~/.ssh/id_rsa.pub
folders:
- map: D://WWW/forum
to: /home/vagrant/forum
type: "nfs"
- map: D:/WWW/aaa
to: /home/vagrant/aaa
type: "nfs"
sites:
- map: forum.test
to: /home/vagrant/forum/public
- map: aaa.test
to: /home/vagrant/aaa/public
databases:
- homestead
features:
- mariadb: false
- ohmyzsh: true
- webdriver: false
# ports:
# - send: 50000
# to: 5000
# - send: 7777
# to: 777
# protocol: udp
再设置一下hosts映射就行了。
6.启动 Homestead 虚拟机
一切就绪之后就可以,在homestead目录下面运行:
vagrant up
进入ssh:
vagrant ssh
开启 NFS 挂载模式
安装nfs插件解决文件io慢的问题
NFS插件:vagrant-winnfsd
vagrant plugin install vagrant-winnfsd
如果被墙,就用下面这个命令
vagrant plugin install vagrant-winnfsd --plugin-clean-sources --plugin-source https://gems.ruby-china.com/
查看所有box:
vagrant box list
选择你要删除的盒子,指定版本进行删除:
vagrant box remove laravel/homestead --box-version 6.0.0
改变了yaml的配置,就需要重载一下:
vagrant reload --provision
更加详细的可以参考:
https://learnku.com/laravel/wikis/25528
https://learnku.com/docs/laravel/7.x/homestead/7450#accessing-homestead-globally
配置文件所在位置:
#设置composer国内镜像
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer
#网站配置文件
vim /etc/nginx/sites-enabled/aaa.test
#php-fpm配置文件
vim /etc/php/7.4/fpm/pool.d/www.conf
#php.ini位置
vim /etc/php/7.4/cli/php.ini