部署Django应用至Vercel时requirements.txt文件报错求助
Django部署Vercel失败及本地pip3.9问题解决
一、Vercel部署失败问题处理
部署时执行pip3.9 install --disable-pip-version-check --target . --upgrade -r /vercel/path0/workout_log/requirements.txt报错,核心原因是部分依赖包版本过旧,存在过时的setup.cfg配置,导致wheel构建失败,结合你的requirements.txt,按以下步骤调整:
- 清理冗余/过时依赖
- 移除
django-heroku==0.3.1和heroku==0.1.4:django-heroku已废弃,你已安装的dj-database-url和whitenoise可完全替代其功能 - 移除
psycopg2==2.9.5:同时安装psycopg2和psycopg2-binary会引发冲突,Vercel构建环境缺少编译psycopg2的底层依赖,保留psycopg2-binary==2.9.6即可
- 移除
- 升级过旧的依赖包
- 将
python-dateutil==1.5升级到python-dateutil==2.8.2:1.5版本过于老旧,存在过时的setup.cfg配置,是引发wheel构建失败的核心原因之一
- 将
- 调整后的requirements.txt示例
asgiref==3.6.0 beautifulsoup4==4.12.0 certifi==2022.12.7 charset-normalizer==3.1.0 dj-database-url==1.2.0 Django==4.1.4 django-bootstrap4==22.3 django-environ==0.10.0 gunicorn==20.1.0 idna==3.4 psycopg2-binary==2.9.6 python-dateutil==2.8.2 requests==2.28.2 soupsieve==2.4 sqlparse==0.4.3 tzdata==2022.7 urllib3==1.26.15 whitenoise==6.4.0
- 指定Vercel的Python版本
在项目根目录创建runtime.txt文件,写入:
确保Vercel使用指定的Python3.9环境构建python-3.9.16
二、本地pip3.9命令未识别问题处理
- 先确认Python3.9是否安装成功
执行python3.9 --version,如果提示命令不存在,说明你还未安装Python3.9,先去Python官网下载对应版本安装(安装时务必勾选「Add Python to PATH」) - 已安装但
pip3.9不可用的解决方法- Windows:找到Python3.9的安装目录(默认是
C:\Python39),直接用完整路径执行C:\Python39\Scripts\pip.exe,或者把该路径添加到系统环境变量PATH中 - macOS/Linux:用
python3.9 -m pip代替pip3.9,或者使用pyenv管理多版本Python,切换到3.9版本后即可正常使用pip命令
- Windows:找到Python3.9的安装目录(默认是
内容的提问来源于stack exchange,提问作者Ledge
相关产品推荐
相关产品推荐

