如何创建和共享用于开发的 VM 环境
How to create and share a VM environment for development
我正在和一群人一起做一个大学项目。我们的目标是向 运行 网络上已有的应用程序添加功能。目前,我正在我的机器上获取 运行 的源代码。这包括克隆一堆 repos,安装 MySQL 和一些(非常旧和过时的 :-| )版本的 Python,以及 运行 一些脚本。这个过程听起来很简单,但事实并非如此; 运行 的代码需要满足很多依赖关系,这意味着我需要花很多时间查看错误日志,试图找出缺少的包和需要安装的包,或者降级。但这不是这个问题的重点。
我想让人们在未来更轻松地选择该项目并开展工作,而无需花费数小时来编译代码。我想在 Linux VM 上设置项目(我知道如何使用 VirtualBox 来做)然后以某种方式共享(?)该 VM,以便其他人可以简单地设置它并能够立即编译代码(我不知道该怎么做,或者如果可能的话)。
此外,如果可能的话,我希望能够在主机 OS 上完成所有编码,并且只在 VM 上进行 compiling/running(我也不知道怎么做)。我想要一些 help/pointers 所有“我不知道”的东西,因为除了如何使用 VirtualBox 设置虚拟机之外,我对 VM 了解不多。
您可以使用 Vagrant to automate the provisioning of the VM, and setup all your tools and dependencies using Docker.
网上有很多很好的 tutorials and sample vagrantfiles
可以帮助您入门。有一个学习曲线,但非常值得付出努力。许多公司使用 Vagrant 来快速配置开发环境。
Vagrant 可以自动从 Web 下载特定的 distro/version 虚拟机(如果尚未在本地安装的话)。它还可以提供一个 Docker 容器,您可以在其中安装任何所需的依赖项、工具等。您可以将 vagrantfile
、dockerfile
、脚本等存储在 GitHub 以便您的同事轻松访问。他们所要做的就是从命令行安装 Vagrant 和 运行 vagrant up
。
如果您想在主机上编写代码并 compile/test 在 VM 上编写代码,则需要使用 Guest Additions 在 VM 中设置一个共享文件夹(请参阅 here). Be VERY careful with line endings if you are working in Windows and running in Linux. You can setup the shared folder with Vagrant as well (see here)。
我正在和一群人一起做一个大学项目。我们的目标是向 运行 网络上已有的应用程序添加功能。目前,我正在我的机器上获取 运行 的源代码。这包括克隆一堆 repos,安装 MySQL 和一些(非常旧和过时的 :-| )版本的 Python,以及 运行 一些脚本。这个过程听起来很简单,但事实并非如此; 运行 的代码需要满足很多依赖关系,这意味着我需要花很多时间查看错误日志,试图找出缺少的包和需要安装的包,或者降级。但这不是这个问题的重点。
我想让人们在未来更轻松地选择该项目并开展工作,而无需花费数小时来编译代码。我想在 Linux VM 上设置项目(我知道如何使用 VirtualBox 来做)然后以某种方式共享(?)该 VM,以便其他人可以简单地设置它并能够立即编译代码(我不知道该怎么做,或者如果可能的话)。
此外,如果可能的话,我希望能够在主机 OS 上完成所有编码,并且只在 VM 上进行 compiling/running(我也不知道怎么做)。我想要一些 help/pointers 所有“我不知道”的东西,因为除了如何使用 VirtualBox 设置虚拟机之外,我对 VM 了解不多。
您可以使用 Vagrant to automate the provisioning of the VM, and setup all your tools and dependencies using Docker.
网上有很多很好的 tutorials and sample vagrantfiles
可以帮助您入门。有一个学习曲线,但非常值得付出努力。许多公司使用 Vagrant 来快速配置开发环境。
Vagrant 可以自动从 Web 下载特定的 distro/version 虚拟机(如果尚未在本地安装的话)。它还可以提供一个 Docker 容器,您可以在其中安装任何所需的依赖项、工具等。您可以将 vagrantfile
、dockerfile
、脚本等存储在 GitHub 以便您的同事轻松访问。他们所要做的就是从命令行安装 Vagrant 和 运行 vagrant up
。
如果您想在主机上编写代码并 compile/test 在 VM 上编写代码,则需要使用 Guest Additions 在 VM 中设置一个共享文件夹(请参阅 here). Be VERY careful with line endings if you are working in Windows and running in Linux. You can setup the shared folder with Vagrant as well (see here)。