如何使用 requirement.txt 在 AWS 上将 virtualenv 从 Python 3.5 更新到 3.6?

如何使用 requirement.txt 在 AWS 上将 virtualenv 从 Python 3.5 更新到 3.6?

我正在麻烦由于 Python 版本差异,我无法部署我的 Django 项目,所以我想在 AWS 上更新其版本(16.04.4)。

我目前有一个 Python 3.5 的虚拟环境,因此我尝试使用 Python 3.6 创建新环境。到目前为止,我已完成:

$ source oldenv/bin/activate
$ pip freeze > requirements.txt
$ deactivate
$ sudo apt-get install python3.6
$ python3.6 -m venv newenv

而且,我收到一个错误:

'-Im'、'ensurepip'、'--upgrade'、'--default-pip']' 返回非零退出状态 1。

我在看类似的问题, 和错误14.04 版本附带的 pyvenv 损坏问题似乎已经得到修复。

有些答案建议使用 without-pip,但我想通过

$ newenv/bin/pip install -r requirements.txt

所以,这听起来不是一个好主意。该怎么办?

答案1

不确定为什么第一种方法不起作用,但这里有一个解决方法:

$ pip install virtualenv --user
$ virtualenv -p python3.6 newenv
$ newenv/bin/pip install -r requirements.txt

相关内容