安装多个 Laravel homestead 环境

Installing multiple Laravel homestead environments

我想知道如何在不让 VirtualBox 崩溃的情况下 运行 多个版本的宅基地。

我目前运行正在默认安装laravel homestead,但我需要安装另一个旧版本,原因是在当前版本0.4.0中mysql 服务器是 5.7,这很好,但我需要另一个 5.6 的环境,因为我有一个需要 5.6 的旧项目,所以 homestead 版本 0.3.0 就可以了。

明确一点:我知道如何 运行 多个站点。这不是问题。我只想 运行 Laravel Homestead Vagrant 盒子的第二个自定义版本,同时仍然有可能 运行 我的普通版本。

详情:我设法添加了两个版本。输出:

vagrant box list
laravel/homestead (virtualbox, 0.3.0)
laravel/homestead (virtualbox, 0.4.0)

所以 0.4.0 版 运行 没问题,现在我怎么才能 运行 0.3.0 呢?

提前致谢!

Vagrantfile 中有一个 运行 带有版本的框的选项。

在您的情况下,您需要将 box_version 添加到您的 Vagrantfile 中,类似于:

Vagrant.configure('2') do |config|
    // This line 
    config.vm.box_version = 0.3.0
end

您可以从 documentation 查看。

好的,我做到了。 我会 post 为遇到此问题的人提供解决方案,因为我无法找到包含宅基地相关说明的分步指南。

没有太多理论,步骤是:

  1. 从这里决定你需要哪个盒子版本 (https://atlas.hashicorp.com/laravel/boxes/homestead),在我的例子中是 0.3.0 和 运行

    vagrant box 添加laravel/homestead --box-version 0.3.0

  2. 在 github 上找到合适的宅基地版本 (https://github.com/laravel/homestead/releases) 在我的例子中是 (v2.1.8) 并将其下载并解压缩到您的主文件夹中的目录,例如 Homestead2
  3. 在 Homestead2 目录中找到 scripts/homestead.rb 文件并编辑它。 查找行

    config.vm.box = settings["box"] ||= "laravel/homestead"
    

    config.vm.hostname = 设置["hostname"] ||= "homestead"

在他们之间添加一行,在我的例子中:

config.vm.box_version = "0.3.0"

你也可以重命名

vb.name = settings["name"] ||= "homestead"

如果你愿意

  1. 从这个目录中 运行 vagrant up

之后就可以正常使用了。

我希望这对某人有所帮助。