【问题标题】:Using multiple development environments on the same OSX machine? [closed]在同一台 OSX 机器上使用多个开发环境? [关闭]
【发布时间】:2016-02-16 16:32:50
【问题描述】:

我最近有一台新的 Mac(2015 MBP,8gb 内存),我正在尝试同时使用 5 个不同的堆栈来设置开发环境。

  • 我以前使用过与this 非常相似的LAMP 设置——我的许多旧(客户端)项目仍然基于使用Foundation 和Libsass 的PHP MVC 框架。虽然我不想以这种方式制作新项目,因为我想了解更多信息,但我仍然需要能够快速轻松地维护这些其他项目。
  • 然后我在 Python / Django 中有一些数据项目。在我的旧 Mac 上,我通过 Virtual Box 使用了一个 linux VM(我还没有类似的东西等)。
  • 我还尝试通过 gulp、browserify 和 React JS 以及 Meteor(拥有自己的服务器)来学习使用 MEAN 堆栈也)和 Ruby on Rails - 我想用这些做更多的开发,但又不会失去从事其他项目的能力。

我的问题是,每当我之前切换到使用 MEAN 或 Rails 时,我都会搞砸我的文件查看/自动编译 LAMP 和 Python,而且我花了很长时间才切换回来。我真的很喜欢 browserify 的工作方式——例如自动编译 sass 文件/缩小,并自动刷新页面,但我遇到了保持我的 python 服务器和灯设置相同的问题。我显然做错了什么,我很想通过全新安装正确设置它。我可以在网上找到的所有教程都涉及设置单独的堆栈环境,但我找不到很多关于将它们设置在一起的教程。

我已经决定,为每个不同的堆栈运行单独的 VM 会严重影响性能,并且有些东西我想在多个堆栈上使用,例如 homebrew。

因此,我的问题是,使用 docker 之类的东西将事物分开与找到使用 homebrew 之类的东西在单个操作系统上一起设置所有东西的方法有什么具体优势? p>

我知道在带有 virtualbox 的 docker 上文件监视不是那么容易 - 但我不确定是否要通过并找到解决方法或使用其他方式。

非常感谢 - 我一直坚持这个问题已经很久了。如果我的问题不是很清楚,我很抱歉 - 我是使用 node/meteor 和 ruby​​ 的新手,所以我不确定从哪里开始!

【问题讨论】:

  • 嗨西蒙。这是一个非常有趣且呈现良好的问题...不幸的是,它不适合 Stack Overflow :( S/O 最适合具有“正确答案”的特定技术问题。它不起作用好吧,“这是最好的方法”问题。过去我们曾经允许这类问题,我们进行讨论,讨论导致意见,导致火焰战争,撕裂我们的社区......所以现在我们只是不要让他们再抱歉:(也许试试你当地的 ruby​​-users 组?
  • 谢谢 - 这很公平。询问所有“不同方式”的做法是否过于基于意见,或者提出一些关于我所知道的每种可能方式的具体利弊的孤立问题?
  • 孤立的问题会很好用——我会试着问自己“这个问题有一个正确的答案吗?”让他们每个人看看他们是否适合这里 - 避免固执己见的问题是一个很好的经验法则......

标签: python ruby-on-rails ruby django macos


【解决方案1】:

在我看来,目前最好的解决方案是使用Vagrant。它也是免费的。

您不仅可以为每个项目使用不同的环境,还可以编写所有自定义安装和配置的脚本。您或您的同事将能够通过简单的命令vagrant up 复制环境。

可以在here 找到为 RoR 开发设置 Vagrant 的流行指南。但是,与该指南相反,我放弃了使用 Chef 转而使用简单的配置脚本。可以找到指南here

请确保启用 NFS,否则 VirtualBox(Vagrant 位于其之上)会很慢。

虽然Cloud9Koding 之类的解决方案在您无法访问开发机器时肯定有用,但我不会在日常工作中使用它们。

【讨论】:

  • 只是在这里再次插入 - 感谢您的回答。在过去的 4 年里,我一直在使用 vagrant,这个答案确实为我指明了正确的方向。
猜你喜欢
  • 1970-01-01
  • 2015-02-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-11-29
  • 2018-05-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多