关于我是如何安装配置 Homestead、Vagrant 的请查看 传送门
情况描述:
当我学习时经过几次配置和各种练习时,准备开始上手想开发的新的项目了,这个时候由于先前的各种配置现有的环境已经被修改过很多遍了不纯了,那么我们如何重新将其设置到最初的状态呢,详看下方分解:
1. Vagrant remove
// 首先我们来移除已安装在 vagrant 中的 box(步骤都要在 Homestead 的根目录下执行哦)
// 1. 查看已安装在 vagrant 的 boxes 列表
vagrant box list
// 我的打印出了 lc/homestead (virtualbox, 8.2.1)
// 2. 执行 remove 命令
vagrant box remove lc/homestead
// 执行后会提示是否删除,键入 y 回车即可
// 可以再次执行 vagrant box list 会发现原本的 lc/homestead 就没有了
来看下截图步骤分解:


这样就已经将 box 移除掉了,但并不会移除本地 VirtualBox
的虚拟机文件,下面将继续讲解如何移除
2. Vagrant destroy
// 直接执行 vagrant destroy 即可
vagrant destroy
// 提示是否要将其移除时输入 y 回车即可

这样就也将 VirtualBox
的 vm
文件移除掉了
3. 删除 Homestead 目录文件
将你的 Homestead 文件夹删除即可,此时你删除掉的东西是足够干净的,我们已经移除了 vagrant box,也删除掉了 VirtualBox
的占用磁盘几个 G
的虚拟机 vm
文件,现在我们将 Homestead
删除就干净了
4. 重装 Homestead
// 命令行进入你需要安装的位置
// 1. 执行
git clone https://gitee.com/summerblue/homestead.git Homestead
// 2. 进入 Homestead 文件夹中
cd Homestead\
// 3. 查看 Homestead 远程分支中的版本
git branch -a
// 4. 选择你所需要的版本(这里我选的是 v7.8.0)
git checkout v7.8.0

5. 初始化 Homestead
// Homestead 根目录中命令行下输入
bash init.sh
大功告成,这样一来你就完成了整个删除和重建的操作,可以继续开始你的编码了,运行上面的代码后,会在 Homestead 目录下生成三个文件
Homestead.yaml
:主要配置信息文件,我们可以在此文件中配置Homestead
的站点和数据库等信息after.sh
:每一次Homestead
盒子重置后(provision)
会调用的shell
脚本文件aliases
:每一次Homestead
盒子重置后(provision)
,会被替换至虚拟机的~/.bash_aliases
文件中,aliases
里可以放一些快捷命令的定义
当然,由于你在步骤 2
中已将 VirtualBox
的 vm
文件删掉了,那么此时你执行 vagrant up
是会报错:
The box 'lc/homestead' could not be found or
could not be accessed in the remote catalog. If this is a private
box on HashiCorp's Vagrant Cloud, please verify you're logged in via
`vagrant login`. Also, please double-check the name. The expanded
URL and error message are shown below:
URL: ["https://vagrantcloud.com/lc/homestead"]
Error: The requested URL returned error: 404 Not Found
原因分析:由于已将 vm
文件移除 vagrant up
启动虚拟机时便找不到虚拟机文件就无法启动,所以上面第一行报错提示 The box ... not be found
未找到或是在远程目录无法访问
解决方案:
- 如果你有
Homestead box
就使用你的 - 没有的话就 点击链接下载(迅雷更快)
// 如果是你自己的 Homestead box 就按照你的步骤
// 如果是上面链接的那么下载完成后目录包含两个文件:
virtualbox.box(教程定制化过的 Homestead 盒子)
metadata.json(盒子的导入配置文件)
// 将下载的文件解压后,通过命令行进入解压目录的根目录并执行:
vagrant box add metadata.json
// 注意:请解压至非中文路径,否则可能会产生一些未知的问题
如果你使用的 Windows
系统在安装 Homestead
的时候报错:The box 'laravel/homestead' could not be found or could not be accessed in the remote catalog.
请下载 MS Visual C++ 2010 x86 并进行安装即可修复。
// 再次在 Homestead 根目录中执行
vagrant up
// 即可启动虚拟机
欢迎观看,本章结束
更多 vagrant
命令点击 👉 传送门