我是 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 命令处中断并出现以下错误;
WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7f2b21bd1610>, 'Connection to pypi.org timed out. (connect 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
我在网上查了很多类似的问题,但没有一个对应的解决方案对我有用。我非常乐意与您分享有助于解决问题所需的任何其他信息。
最佳答案
听起来在构建 docker 容器时网络连接存在一些问题。
使用 Host
作为 compose 文件中的网络来解决问题。
version: '3.4'
services:
django_image:
build:
context: .
network: host
试一试,它会解决问题。
关于python - 通过 docker-compose 运行 'pip install' 时出现 ConnectTimeoutError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65642356/