Vagrant 无法校验手动下载的 Homestead Box 版本

起因

4年前电脑,配置不太好了,现有的 Homestead 运行起来太吃内存。在修改了 Homestead.yaml 文件里 memory 选项的内存配置为 1024 后,应用最新配置重启失败。

索性重新部署 Homestead,下载一个 3.0.0 版的 Box:

  1. 下载安装 Virtual Box 虚拟机。先前已有,无需下载。
  2. 下载安装 Vagrant 虚拟机管理工具。先前已有,无需下载。
  3. 添加 Homestead Box。执行 vagrant box add laravel/homestead --box-version=3.0. ,在命令的输出中获取 Downloading url:https://vagrantcloud.com/laravel/boxes/homestead/versions/3.0.0/providers/virtualbox.box,鉴于下载速度中止命令并手动下载该盒子。然后执行 vagrant box add laravel/homestead my_path_to/virtualbox.box 导入盒子。
  4. 编辑 Homestead.yaml。将 memory 条目改为 1024,定义共享文件夹、项目站点、数据库名。
  5. 在 ~/Homestead 目录下执行 vagrant up 启动 Homestead,出现报错。

错误消息

The box 'laravel/homestead' is not a versioned box. The box was added directly instead of from a box catalog.Vagrant can only check the versions of boxes that were added from a catalog such as from the public Vagrant Server.

解决办法

在 laravel-VAGRANTSLASH-homestead 目录下 touch 一个 metadata_url 文件,写入以下内容:

https://vagrantcloud.com/laravel/boxes/homestead/

比如,我的是这样的:

cd ~/.vagrant.d/boxes/laravel-VAGRANTSLASH-homestead/
echo 'https://vagrantcloud.com/laravel/boxes/homestead/' > metadata_url

然后启动 Homestead 即可。

相关链接

  

上一篇:Oracle的学习心得和知识总结(一)|Oracle数据库闪回技术详解


下一篇:将泛类型集合List类转换成DataTable