这是How do you install phantomjs on AWS lambda?的延续,我已经弄清楚了如何使phantomjs在aws lambda上运行,但是当我使用它生成pdf时(使用html-pdf nodejs库),内容缺少文本。如果我创建一个在上面使用FROM node:10.16.0-jessie
的docker容器,则pdf可以正常显示。如果我使用FROM amazonlinux:2.0.20190508
创建一个docker容器(我认为它类似于AWS lambda容器),则我的PDF上缺少文本。
我通过运行amazonlinux:2.0.20190508
解决了yum install fontconfig
中的此问题。但是,我不知道如何在实际的lambda中执行相当于yum install fontconfig
的操作。如果您查看上面的链接,将会看到那里的答案试图提供该信息,但是由于某种原因,它仍然无法正常工作。我相信原因是,如何正确地从amazonlinux:2.0.20190508
容器中提取fontconfig安装仍然缺少一个步骤。
总之,这是我的问题:在yum install fontconfig
中运行amazonlinux:2.0.20190508
之后,如何从容器中提取它并打包,以便AWS Lambda可以使用它?
顺便说一下,我确定还有其他答案似乎正在回答这个问题,但是AWS lambda内置依赖项的更改是如此频繁,因此这些答案都不再起作用。
最佳答案
就我而言,我这样做是:
FROM amazonlinux:2.0.20190508
RUN yum -y install fontconfig freetype
并将其构建为example:latest
docker run -v D:\dockerFiles:/mnt --rm -it example:latest
/lib64
libbz2.so.1 libexpat.so.1 libfontconfig.so.1 libfreetype.so.6 libpng15.so.15
/mnt/lib
。从lib
和zip文件夹lib中获取D:\dockerFiles
。 关于amazon-web-services - 如何在AWS Lambda上安装fontconfig?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56875174/