来自MAMP Pro背景,我喜欢拥有“基础”文件夹(在这种情况下为/Sites
)的能力,让我的所有项目都在其下面,并用它设置自定义服务器名称/别名。使用Vagrant,看起来我可以使用vagrant-hostsupdater完成名称/别名部分,但如果我真的只想在/Sites
中拥有Vagrant文件,然后所有这些文件都使用相同的配置,那么什么是使用这些自定义主机名指定子文件夹磁盘位置的最佳方法是什么?
我很可能过度思考这个问题,刚刚成为GUI界面的傻瓜,并且很想知道如何实现这一目标。一如既往地谢谢!
我以前使用MAMP Pro,它允许您使用GUI界面设置自定义主机添加。因此,在我的~/Sites
目录中,我有几个不同的项目,都在子文件夹中。下面的屏幕截图显示了如何设置服务器名称并指定磁盘位置,所有这些都来自此中心位置。
现在我知道(并使用vagrant-hostsupdater),但我想知道的是我是否可以在我的~/Sites
目录中设置我的Vagrant文件(这有点像服务器的根目录;因为我的所有项目都需要相同的设置),然后为每个项目设置单独的主机名 - 所以不必访问像local.dev/project-1
或local.dev/project-2 I could setup server names such as
local.project-1.com这样的子文件夹{来自该顶级Vagrant文件的{1}} local.project-2.com`并指定它应附加该重写规则的子文件夹。
我之所以这样做是因为我只需运行一个and
,然后我可以从一个Vagrant实例访问我的所有项目,并且只跟踪一个Vagrant文件。谢谢!
答案 0 :(得分:1)
您需要告诉vagrant
您想要使用哪些主机名。
假设你设置了你想根据目录名设置你的主机名;你可以使用ruby获取所有主机名并将它们传递给hostsupdater配置。
SITES_DIR = "~/Sites"
config.hostsupdater.aliases = Dir["#{SITES_DIR}/*/"].map { |d| d.chomp('/') }
或者,您可以模拟某些您需要的配置以及您要尝试执行的操作,并在Vagrantfile
内的ruby中评估/处理它。