如何解决让 LibreOffice已卸载,仅限文件在 AWS Lambda 上运行
我快到了,但卡在了最后一个障碍。
$ /path/to/soffice.bin --version
^ 这适用于我的本地机器(Docker 容器)和(部署在)AWS Lambda 上的容器
然而,
$ /path/to/soffice.bin \
--headless --invisible --nodefault --nofirststartwizard --nolockcheck --nologo --norestore --nosplash \
--convert-to pdf:writer_pdf_Export \
--outdir /tmp \
$filename \
2>&1 || true # avoid exit-on-fail
... 失败:
LibreOffice - 对话框“LibreOfficeDev 6.4 - 致命错误”:“应用程序无法启动。 无法完成用户安装。 'LibreOfficeDev 6.4 - 致命错误:应用程序无法启动。 无法完成用户安装。
在谷歌上搜索,一切都指向 ~/.config/libreoffice
Lambda 运行时的文件权限有些奇怪。 也许它正在尝试读取或写入它无权访问的位置。
有什么办法让它工作吗?
解决方法
问题是lambda只能写在/tmp
上,但是默认的HOME不是/tmp
添加
export HOME=/tmp
在调用 /path/to/soffice.bin
之前
应该可以解决问题。
另外,请注意,由于未知问题,第一次运行会产生可预测的错误。所以你应该处理重试。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。