在 Docker 中运行 Python 时出现 407 代理身份验证错误,但在本地环境中运行时不会出现此错误

在 Docker 中运行 Python 时出现 407 代理身份验证错误,但在本地环境中运行时不会出现此错误

我遇到了一个奇怪的问题。当我在本地机器上运行脚本并通过(付费和经过身份验证的)代理发出请求时,它运行正常。但是,当我将应用程序容器化并尝试再次运行时,我收到以下错误:

File "/usr/local/lib/python3.7/site-packages/requests/adapters.py", line 513, in send
    raise ProxyError(e, request=request)
requests.exceptions.ProxyError: HTTPSConnectionPool(host='www.myawesomesite.com', port=443): Max retries exceeded with url: /my-url/model?opname=metadata (Caused by ProxyError('Cannot connect to proxy.', OSError('Tunnel connection failed: 407 Proxy Authentication Required')))

我要强调一下,我的 Python 代码完全相同,包括检索和使用代理凭据时。奇怪的是,我已经使用同样的技术一年多了,但现在突然看到这个问题。Docker 对代理进行身份验证的方式有什么不同吗?有人知道是什么导致了这个问题吗?

作为参考,这是我的 DockerFile 的要点:

FROM python:3.7.5-slim
WORKDIR /usr/src/app
RUN python3 -m pip install \
        requests \
        mysql-connector \
        pymongo \
        numpy \
        dnspython \
        simple_watchdog_timer
COPY myScript1.py .
COPY mySupportingModule1.py .
ENTRYPOINT ["python3", "myScript1.py"]

相关内容