0

我使用 virtualenv 在本地维护项目的环境。我也使用 virtualenvwrapper,所以我可以使用在环境之间切换

workon project1

但是,在使用 virtualenv 时,您需要激活虚拟环境。我刚刚在 ec2 实例上安装了 virtualenv,但是如何确保环境保持活动状态?我现在最好的尝试就是将正确的 virtualenv 命令放在 .bashrc 中。但是,我完全确定这部分是如何工作的……如果服务器重新启动,.bashrc 会运行吗?

本质上,让 virtualenv 始终在生产服务器上的最佳方法是什么?

4

2 回答 2

3

“激活 virtualenv”基本上意味着您正在更改$PATH环境变量。

如果您希望始终激活 virtualenv,请将您的 virtualenvbin路径添加到$PATH在命令运行之前执行的环境变量(~/.bashrc是一个选项)。

示例(使用~/.bashrc):

export PATH=/path/to/myenv/bin:$PATH

(假设/path/to/myenv是放置我的 virtualenv 的位置)

~/.bashrc仅在您启动新的 bash shell 时执行(即使在重新启动后)。如果您从不启动 bash shell,则~/.bashrc永远不会被执行。

于 2012-12-31T01:03:47.360 回答
0

如果您希望您virtualenv的项目真正永久存在,您可以将以下两行直接填充到您的代码中:

activate_this = 'this_is_my_project/bin/activate_this.py'
execfile(activate_this, dict(__file__=activate_this))
于 2013-05-21T19:48:13.790 回答