我们使用Vagrant进行开发环境自动化和配置。它运作顺利。但有时候,如果流浪者有一些问题(我们面临很多问题,从SSH开始到网络配置),加入我们的新开发者应该只是启动盒子并开始工作,真的很难应对。所以我只是想知道,管理这些虚拟环境是不是有一些更简单的方法(比如有像VirtualBox这样的GUI来启动和结束环境)? 也许我的问题应该是,除了Vagrant之外,这个领域的最佳实践是什么?
答案 0 :(得分:37)
Vagrant使用virtualbox作为虚拟化层,因此您可以使用gui启动vagrant vm。将以下内容添加到您的VagrantFile。
config.vm.boot_mode = :gui
另请查看sahara,因为它可以让您将其视为具有快速回滚功能的沙箱等。
答案 1 :(得分:10)
我会在这里回应其他评论。如果您已经有一个平稳运行的设置,请确保每个人都使用相同版本的VirtualBox,Vagrant和basebox。
对于UI和更多分发选项,您可能会发现感兴趣的目标:https://github.com/maestrodev/wanton
答案 2 :(得分:6)
在GUI模式的v1.1中更新了配置:
config.vm.provider "virtualbox" do |v|
v.gui = true
end
来自:http://docs.vagrantup.com/v2/virtualbox/configuration.html
除此之外,我对新版本非常满意,我会试一试
答案 3 :(得分:4)
我不确定是否有另类选择。 Vagrant是一款相对较新的软件。当VM上的虚拟机插件版本与主机上的Virtualbox版本不同时,似乎会出现ssh on Vagrant的问题,除了重新安装正确的版本之外,我不确定是否有解决方案。
编辑虚拟机插件名为VirtualBox Guest Additions
答案 4 :(得分:4)
将“config.ssh.forward_x11 = true”添加到您的Vagrant文件中,然后就可以轻松使用X-Windows。
答案 5 :(得分:1)
nix
软件包管理器真的值得一试:http://nixos.org/nix
它提供了命令nix-shell
,它根据文件shell.nix
启动shell,该文件对应于nix-world中的Vagrantfile
。
然而,与Vagrant相比,并没有涉及昂贵的虚拟化。真正发生的是使用构建输入的加密哈希来进行包管理的功能方法。
答案 6 :(得分:1)
如果您不介意配置开销https://www.docker.com/
,则可以使用Docker答案 7 :(得分:1)
我过去曾使用过vagrant而且我也改用了一个纯粹的码头工具解决方案,因为它太沉重/难以设置/缓慢出星(这是我个人的观点)。我通常使用docker compose构建我的文件,当我不想手动执行时,我使用stakkr(一个用python制作的轻量级包装:https://github.com/edyan/stakkr)。
干杯