【问题标题】:best practices for setting development environment设置开发环境的最佳实践
【发布时间】:2010-05-06 10:36:20
【问题描述】:

我使用 Linux 作为主要操作系统。我需要一些关于如何设置桌面和开发的建议。我主要在 .Net 和 Drupal 上工作,但也有一段时间在其他灯产品和 C/C++、Qt 上工作。我也对移动(android..)和嵌入式开发感兴趣。

目前我在我的主操作系统上安装了所有东西,即使我用了一点。我会使用一些虚拟机(用于灯服务器)。

我是否应该为每种开发使用单独的 VM(例如,一个用于 .Net/Mono,另一个 C++,一个用于移动设备,一个用于 db,一个用于 xyz 事物等) 将主要开发环境保留在主操作系统上,并将其他开发环境移动到 VM 中。

  • 主操作系统应该搞砸了
  • 让事情易于组织(必须)
  • 性能应该是最佳的(组件最佳性能的最佳设置)

我很想知道其他人的情况。

【问题讨论】:

  • 对我来说似乎更像是一个 StackOverflow 问题
  • 这更适合我们的姊妹网站Stack Overflow。请不要交叉发布;很快就会迁移到那里。

标签: development-environment


【解决方案1】:

VM 有利有弊。

优点:

  • 便携性:您可以将图像移动到 不同的服务器
  • 轻松备份(但冗长)
  • 复制(新成员加入团队)

缺点

  • 性能
  • 硬件要求
  • 备份大小(每个 VM 20-40 GB ...)
  • 备份图像的管理(有什么区别不明显)
  • 使所有图像保持最新 (修补/Windows 更新)

对于您的场景,我将创建具有核心操作系统和共享组件(Web 服务器、数据库)的基础虚拟机,复制它并将特定工具安装到单独的虚拟机中。如果你在 VM 中组合工具,你最终可能会遇到与使用基本操作系统一样的混乱 - 优点是更容易摆脱它;-)

【讨论】:

    【解决方案2】:
    • 最佳性能!= 使用虚拟机
    • 如果您仍然需要使用虚拟机,那么可以:最好为每个需要一个虚拟机使用单独的虚拟机,除非您一次需要多个虚拟机

    【讨论】:

    • 最佳性能是指单个组件 (VM) 的最佳性能,(即安装了许多软件包的服务器可能会变慢)。
    【解决方案3】:

    现在 OCI 容器已经稳定并得到很好的支持,通过 dockerpodman 或其他类似工具使用这些容器是越来越受欢迎的选择。

    它们是隔离的,但在同一个内核下,所以:

    • 它们几乎与虚拟机一样便携,
    • 与虚拟机一样,它们可以拥有自己的虚拟 IP 地址,因此它们可以运行从外部看不到的服务,并且不会占用主机上的端口,但是
    • 它们不会像虚拟机一样在磁盘或内存中保留任何额外空间,并且
    • 它们不会被任何虚拟化层减慢,并且
    • 从主机挂载目录很容易,不需要任何特殊支持。

    通常的方法是在开发者的正常主目录中进行结帐并将其挂载到容器中以进行构建、测试和运行。

    Remote Development 扩展现在支持在容器中构建Visual Studio Code

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-09-06
      • 2019-10-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-15
      相关资源
      最近更新 更多