【问题标题】:ConnectTimeoutError while running 'pip install' via docker-compose通过 docker-compose 运行“pip install”时出现 ConnectTimeoutError
【发布时间】:2021-04-14 22:47:03
【问题描述】:

我是 docker 新手,目前正在尝试为我的 Django 项目构建映像。这是我的Dockerfile

FROM python:3.8.5-alpine
WORKDIR /my_project

ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1

RUN pip install --upgrade pip
COPY ./requirements.txt .
RUN pip install -r requirements.txt

COPY . .

当我运行docker-compose build 时,在第二个 pip 命令处执行中断并出现以下错误;

警告:重试(重试(总计 = 3,连接 = 无,读取 = 无, redirect=None, status=None)) 连接中断后 '连接超时错误(, '与 pypi.org 的连接超时。 (连接 timeout=15)')': /simple/asgiref/

一些上下文:

操作系统:Ubuntu 20.04.1 LTS 内核:Linux 5.8.0-34-generic

docker --version Docker 版本 20.10.2,构建 2291f61

docker-compose --version docker-compose 版本 1.27.4,构建 40524192

我在网上遇到了很多类似的问题,但没有一个相应的解决方案适合我。我非常乐意分享帮助排除故障所需的任何其他信息。

【问题讨论】:

    标签: python docker docker-compose pip


    【解决方案1】:

    听起来在构建 docker 容器时网络连接存在一些问题。 使用 Host 作为 compose 文件中的网络来解决问题。

    version: '3.4'
    services:
      django_image:
        build:
          context: .
          network: host
    

    试一试,它会解决问题的。

    【讨论】:

      最近更新 更多