【问题标题】:Docker build problems with pip install -r requirements: Failed to establish a new connection: [Errno -2] Name or service not knownDocker 构建问题与 pip install -r 要求:无法建立新连接:[Errno -2] 名称或服务未知
【发布时间】:2019-09-24 20:48:06
【问题描述】:

我正在尝试 Docker 构建一个 django 应用程序,但是当 docker 尝试 pip install -r 要求时,我收到以下消息:

Collecting Django==2.2.5 (from -r requirements.txt (line 1) WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.VerifiedHTTPSConnection object at 0x7ff789506828>: Failed to establish a new connection: [Errno -2] Name or service not known',)': /simple/django/

这是我的 Dockerfile:

FROM python:3.6
ENV PYTHONUNBUFFERED 1
WORKDIR /app
COPY . /app
RUN pip install -r requirements.txt

我的 Linux 发行版:

Linux version 4.15.0-30deepin-generic (pbuilder@zs-PC) (gcc version 6.3.0 20170516 (Debian 6.3.0-18+deb9u1)) #31 SMP Fri Nov 30 04:29:02 UTC 2018

不只是Django,所有需求都无法安装。我没有使用代理

【问题讨论】:

  • 如果你直接做pip install,而不是来自requirements文件呢?
  • 与 RUN pip install Django==2.2.5 代替 RUN pip install -r requirements.txt 时出现同样的错误
  • 顺便说一句,尝试 RUN pip install --upgrade pip 并收到此错误:警告:重试(重试(总计=0,连接=无,读取=无,重定向=无,状态=无))连接被'NewConnectionError(': 无法建立新连接: [Errno -2] Name or service not known',)': /simple/pip/
  • 您的主机环境是否有有效的网络连接?你能在你的宿主环境中pip install吗?
  • 是的,我的主机中有连接。我可以在终端中进行 pip install 和 pip install -r 要求。看起来我在 docker 容器内没有网络/连接

标签: python docker pip


【解决方案1】:

可能是构建过程中缺少网络访问。试试:

docker build --network=host .

【讨论】:

    【解决方案2】:

    我遇到了同样的问题,在我的情况下,我连接到 VPN 服务器,断开与 VPN 客户端的连接解决了这个问题。

    【讨论】:

      猜你喜欢
      • 2015-06-12
      • 1970-01-01
      • 2013-09-24
      • 1970-01-01
      • 1970-01-01
      • 2018-01-05
      • 2016-02-04
      • 2019-12-05
      • 2021-11-05
      相关资源
      最近更新 更多