我第一次尝试设置 Docker,在运行命令时遇到以下错误:docker compose up --build
8.892 ERROR: Could not find a version that satisfies the requirement pywin32==306 (from versions: none)
8.893 ERROR: No matching distribution found for pywin32==306
------
failed to solve: process "/bin/sh -c pip install -r requirements.txt" did not complete successfully: exit code: 1
docker文件:
FROM python:3
ENV PYTHONUNBUFFERED=1
WORKDIR /code
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY . .
EXPOSE 8000
CMD ["python","manage.py","runserver"]`
需求.txt:
asgiref==3.7.2
backports.zoneinfo==0.2.1
certifi==2024.2.2
charset-normalizer==3.3.2
Django==4.2.11
docker==7.0.0
idna==3.6
packaging==24.0
pywin32==306
requests==2.31.0
sqlparse==0.4.4
typing_extensions==4.10.0
tzdata==2024.1
urllib3==2.2.1
更多信息:
运行 pip show pywin32 后 得到以下版本: 名称:pywin32 版本:306
python:3
基础镜像是基于Linux发行版debian:12
的docker镜像。
另一方面,pywin32
只有Windows版本,这对于它作为一个带有“Python for Window Extensions”描述的包来说很有意义。
因此你会得到错误
ERROR: No matching distribution found
。这些架构不兼容。
至于要做什么,这些基本上是你的选择。
您真的需要这个包裹吗?如果没有,请将其删除。
您正在构建跨平台的东西并且仅有条件地使用
pywin32
吗?使用
pywin32==306; platform_system=="Windows"
另请参阅有没有办法为我的基于平台的 Python 应用程序提供条件requirements.txt 文件?了解其他选项。