具有 AppEngine Python flex env 的最新 pip?

问题描述 投票:0回答:3

我想将应用程序从 Python 3.7 标准环境移动到 Python 3.6 Flex 环境。

Python 3.7 附带 pip 18,Python 3.6 附带 pip 9。Pip 10 引入了一个非常有用的功能,构建依赖项。许多分析包需要它才能工作,否则您必须在单独的步骤中手动安装 Cython 等构建依赖项。这在 GAE 中显然是行不通的。

在 GAE 之外,解决方案是

pip install --upgrade pip

是否可以让Python 3.6环境在运行之前更新其pip

pip install -r requirements.txt

pip
添加到
requirements.txt
没有效果。

google-app-engine pip google-app-engine-python app-engine-flexible
3个回答
4
投票

只能使用

requirements.txt
方法安装可通过 pip(提供的)安装的 python 包。

为了满足任何其他依赖项,包括 pip 本身,您可以构建一个完全根据您的需求定制的自定义运行时

在 App Engine 柔性环境中使用自定义运行时来使用 Java、Python、Node.js 或 Go 的替代实现,或编写 任何其他语言的代码。定义新的运行时环境允许 您可以包含其他组件,例如语言解释器或 应用服务器。


0
投票

至少从 Python 3.9 及更高版本开始,我经常在标准环境的 Dockerfile 中包含以下内容。

# Install production dependencies.
RUN pip install --upgrade pip
RUN pip install -r requirements.txt

(然后你可以运行 Cython)。


0
投票

提出这个问题是因为我试图弄清楚如何在标准环境中更新库。

根据文档“默认情况下,App Engine 会缓存获取的依赖项以减少构建时间。要安装依赖项的未缓存版本,请使用以下命令”

gcloud app deploy --no-cache

© www.soinside.com 2019 - 2024. All rights reserved.