我目前有使用 lualatex 编译 LaTeX 文件的 Django 代码。它在我的虚拟环境中本地运行,但当我将项目部署到 Railway 时,出现以下错误:
PANIC:调用 Lua API 时出现未受保护的错误(zlib 库版本不匹配 - 标头:1.2.11,库:1.3)
我尝试使用 railway.json 文件中的 nixpacks 手动安装 zlib 版本 1.3(我也尝试了 1.2.11),但当我尝试在已部署的 Web 应用程序上编译 LaTeX 文件时,错误仍然存在。这是我的 railway.json 文件:
{
"$schema": "https://schema.up.railway.app/railway.schema.json",
"build": {
"builder": "NIXPACKS",
"nixpacksPlan": {
"phases": {
"setup": {
"aptPkgs": ["...", "texlive-full", "wget"],
"cmds": [
"wget https://zlib.net/current/zlib.tar.gz && tar -xzf zlib.tar.gz && cd zlib-1.3 && ./configure && make && sudo make install"
]
}
}
}
},
"deploy": {
"startCommand": "python manage.py migrate && python manage.py collectstatic --noinput && gunicorn layoutGenerator.wsgi",
"restartPolicyType": "ON_FAILURE",
"restartPolicyMaxRetries": 10
}
}
这是我在虚拟环境中创建的 requirements.txt:
asgiref==3.7.2
Django==5.0
et-xmlfile==1.1.0
gunicorn==21.2.0
numpy==1.26.2
openpyxl==3.1.2
packaging==23.2
pandas==2.1.3
pdf2image==1.16.3
Pillow==10.1.0
python-dateutil==2.8.2
pytz==2023.3.post1
six==1.16.0
sqlparse==0.4.4
tzdata==2023.3
除了这个 LaTeX 编译之外,其他一切似乎都可以在 Web 应用程序上运行。任何帮助都将不胜感激!