您是否虚拟化了全部或部分开发环境?

时间:2009-11-18 15:24:35

标签: ruby-on-rails development-environment virtualization

我一直在考虑虚拟化部分或全部RoR开发环境。

理论上,由于封装,这可能具有许多优点

  • 轻松管理特定于应用的配置
  • 沙盒宝石和插件依赖
  • 跨平台
  • 即插即用
  • 虚拟化商品,如快照等
  • 通过几个设备分离关注点,用于不同的开发阶段(开发,测试,升级等)

然而,在实践中,我的第一次试用确实让我的工作流程变得困难。 我的ubuntu盒子正在运行一个无头的VM ubuntu服务器,我就像你在云端工作一样,但是可以在本地访问源文件,然后从主机编辑gVim(显然)。

我的问题主要是由于从主机编辑源代码,并试图依赖guest虚拟机来处理所有ruby,而rails.vim并不喜欢这样。 虽然我已经暗示过针对这个特定vim问题的一些可能的解决方法,但它仍然非常繁琐。

另一种选择是运行一个完整的客户操作系统,并从那里编辑源代码,但这对我来说并不是真的有吸引力。

我还没有尝试过将cvs扔进混音中,但是我可以预见,作为另一个令人头疼的问题,这会使这种设置变得笨拙并且几乎无法实现目的。

所以我还没有找到一个可行的解决方案。

您是否曾尝试虚拟化部分或全部开发环境,并设法不损害您的工作流程,工作效率或环境的友好性,或者更好,还是改进了它?

1 个答案:

答案 0 :(得分:1)

绝对是的。然而,对于每个人来说,没有真正理想的方法 - 经过多次练习后,您会发现它取决于您最满意的方式。我们使用虚拟化的一些方法:

  • 在Windows XP中虚拟化完整的.NET开发环境,包括VS 2008,IIS,MS SQL Server
  • 在CentOS中虚拟化完整的PHP + RoR开发环境
  • 在Windows XP中虚拟化多个完整的Java环境,包括Eclipse,Tomcat / Jboss,MySQL和Apache
  • 在Server 2003,Server 2008,Ubuntu,CentOS,Red Hat和openSUSE中虚拟化多个完整的服务器环境(使用GUI)。

在您的情况下,我会说整个桌面虚拟化,然后克隆它,以便您可以运行多个实例,您可以在其中尝试不同的gem包,插件和配置变体。如果您的主机有足够的RAM - 至少4GB,您应该能够运行至少3个需要1GB RAM的实例。经验法则是始终为主机操作系统保留1GB。

此外,如果您的计算机足够快,当您在虚拟实例GUI中运行时,您应该注意到几乎没有延迟,除非可能在运行构建脚本或启动服务器时:)

顺便说一下,我们选择的虚拟化客户端是VirtualBox

相关问题