You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Cloud Foundry部署带paramiko的应用时vendor依赖无法找到cryptography

问题根因

本地下载依赖的环境和Cloud Foundry Python buildpack的运行环境(Linux x86_64)架构、平台不一致,导致下载到vendor目录的cryptography二进制包和CF运行环境不匹配,pip无法识别为可用依赖。如果未配置pip优先从vendor目录检索依赖,也会触发该类报错。

修复步骤

  • 调整依赖下载命令,明确指定适配CF运行环境的参数,将命令替换为:
    pip download -r requirements.txt --dest vendor --platform manylinux2014_x86_64 --python-version 3.X --only-binary :all:
    

    注意将命令中的3.X替换为你CF使用的Python版本号,需和buildpack选中的Python大版本完全一致(例如3.9、3.10)。如果你本地运行环境本身就是Linux x86_64,和CF环境一致,可省略--platform和--python-version参数。

  • 在项目根目录新增pip.conf配置文件,指定pip优先从vendor目录检索依赖,不走公共PyPI索引,内容如下:
    [install]
    no-index = true
    find-links = ./vendor
    
  • 确认requirements.txt中声明的cryptography版本范围和下载到vendor目录的版本完全匹配,没有版本冲突。
  • 重新打包项目推送到CF即可。

额外注意事项

cryptography高版本依赖Rust编译环境,如果你使用源码包部署,CF的默认构建环境可能缺少对应编译工具链,所以必须下载预编译的二进制wheel包,不要使用源码包部署。

内容的提问来源于stack exchange,提问作者sanjay srivatsa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 22:27:04