Railway部署FastAPI时Prisma CLI安装失败,报GLIBC_2.36缺失错误
解决Railway部署FastAPI时Prisma CLI安装的GLIBC版本问题
方案1:改用Python版Prisma客户端(推荐)
直接跳过Node版Prisma CLI,用Python原生客户端生成代码:
- 安装Python版Prisma:
pip install prisma - 修改构建脚本(比如
railway.toml或项目构建命令配置),把prisma generate替换成python -m prisma generate - 这个方法完全绕开Node环境的依赖问题,Python版客户端会自动适配Railway容器的系统库版本。
方案2:自定义Nixpacks的Nixpkgs版本
在项目根目录创建nixpacks.toml文件,指定兼容旧GLIBC版本的Nixpkgs分支:
[phases.setup] nixpkgs = "github:NixOS/nixpkgs/nixos-22.11"
NixOS 22.11版本的Nixpkgs依赖的GLIBC是2.35,刚好匹配Railway容器中现有libc.so.6的版本,能解决版本不兼容问题。
方案3:预生成Prisma客户端并提交到代码库
本地提前生成客户端代码,避免部署时执行生成命令:
- 在本地开发环境执行
prisma generate,生成prisma/client目录 - 把
prisma/client目录从.gitignore中移除,提交到Git仓库 - 删除部署脚本中的
prisma generate命令,部署时直接使用预生成的客户端文件
内容的提问来源于stack exchange,提问作者Kabir Singh Shekhawat
相关产品推荐
相关产品推荐

