gpt4 book ai didi

python - 如果我使用 virtualenv,为什么还要使用 vagrant?

转载 作者:太空狗 更新时间:2023-10-29 17:26:12 25 4
gpt4 key购买 nike

我读了这个问题 Do I need to use virtualenv with Vagrant?但我想知道相反的情况。

我在 UNIX/Linux 环境(分别是 MAC OSX 和 Ubuntu)中编程和部署,我使用 virtualenv 来隔离环境。

其实我从来没有遇到过任何问题,但我看到一些人和很多教程建议一起使用它们,我想知道我是否应该使用 vagrant 以及为什么我应该使用 vagrant,有人可以向我解释一下吗?

最佳答案

virtualenv 和 Vagrant 之间的区别在于 virtualenv 只是关于单独的 Python 安装,而 Vagrant 是关于整个机器。

  • virtualenv 将 Python 解释器和 Python 依赖项隔离在一台机器上,因此您可以同时安装多个 Python 项目及其自身的依赖项。但是对于机器的其余部分,virtualenv 不会做任何事情:您仍然有使用 Mac OS X/Linux 包管理器安装的全局依赖项/包,并且这些在 virtualenvs 之间共享。

  • Vagrant 指定整台机器:它允许您指定 Linux 发行版、要安装的包以及安装项目要采取的操作。因此,如果您想在该机器上启动一个包含多个 Python 项目的 Vagrant box,您仍然需要使用 virtualenv 来分离 Python 依赖项。

例如,Mac OS X 上的开发人员和 Ubuntu Linux 上的开发人员可以使用 virtualenv 来安装他们的 Python 项目,但他们需要使用 Vagrant 在本地启动同一台机器(例如,与部署的服务器)来运行完全相同的 Linux 版本,上面安装了相同的包和相同的 Python 项目安装。

因此,为了回答您的问题,使用 Vagrant 的原因是它允许您在本地创建一台安装了确切软件包的机器,而 virtualenv 只关心 Python 依赖项。

关于python - 如果我使用 virtualenv,为什么还要使用 vagrant?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27069182/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com