如何让 gunicorn 在拨打电话时使用代理服务器?

How do I tell gunicorn to use a proxy server when making outbound calls?

我有一个由 gunicorn 提供的 Django Web 应用程序,运行 在 Docker 容器中。我的 Django 应用程序需要访问 AWS,但失败了。我相信这是因为它全部 运行 在公司防火墙后面,我需要以某种方式告诉 gunicorn 使用我们的代理服务器。我怎么做?文档不清楚(对我来说)。谢谢。

gunicorn 不参与传出请求。

在你的Dockerfile中你可以做:

ENV HTTP_PROXY="http://10.10.10.10:8000"
ENV HTTPS_PROXY="http://10.10.10.10:1212"

无论代理 URL 是什么(或者只是以其他方式设置环境变量)。

这可能适用于某些图书馆(但不是全部)。例如。 AWS CLI 尊重那些:https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-proxy.html