将 vagrant 配置启动为单击应用程序的好方法?
Good way to start up vagrant configuration as single-click app?
我使用vagrant在Linux下配置不同的VirtualBoxes。
我的目标是我的任何同事只需访问内部网站并选择他想要在 his/her 机器上安装的 VirtualBox。
选择一个或多个框后,他或她可能只需单击 "proceed with installation",以便检查相应的 vagrant directory/ies 及其 Vagrantfile is/are 并触发 vagrant up 执行。
所以我想尽可能多地从控制台中抽象出来,让它看起来最先进/花哨。
我应该使用什么技术?
我想到了vue.js和node.js?
这是实现我的目标的可行方法吗?
您可以通过多种方式抽象 Vagrantfile 生成(包括 但处理 vagrant 操作会更加困难。
目前 vagrant 除了使用 cli 或创建插件外,不为其 API 提供其他接口。在 Web 应用程序中调用 cli 命令是可行的,但在我看来是个坏主意。
所以剩下的唯一行动就是创建一个 vagrant 插件,通过 REST API(例如以 sinatra 为核心)服务和妖魔化 vagrant,然后创建一个简单的外部客户端服务(对例子)。
如果您直接通过插件公开 ui ,它将创建一个太强的耦合 IMO。
我使用vagrant在Linux下配置不同的VirtualBoxes。
我的目标是我的任何同事只需访问内部网站并选择他想要在 his/her 机器上安装的 VirtualBox。 选择一个或多个框后,他或她可能只需单击 "proceed with installation",以便检查相应的 vagrant directory/ies 及其 Vagrantfile is/are 并触发 vagrant up 执行。
所以我想尽可能多地从控制台中抽象出来,让它看起来最先进/花哨。
我应该使用什么技术?
我想到了vue.js和node.js? 这是实现我的目标的可行方法吗?
您可以通过多种方式抽象 Vagrantfile 生成(包括
目前 vagrant 除了使用 cli 或创建插件外,不为其 API 提供其他接口。在 Web 应用程序中调用 cli 命令是可行的,但在我看来是个坏主意。
所以剩下的唯一行动就是创建一个 vagrant 插件,通过 REST API(例如以 sinatra 为核心)服务和妖魔化 vagrant,然后创建一个简单的外部客户端服务(对例子)。 如果您直接通过插件公开 ui ,它将创建一个太强的耦合 IMO。