我是Azure的新手,如果这很明显,请原谅我。
我正在构建一个Azure linux nodejs函数,它将zip文件从Blob存储下载到本地文件系统,解压缩文件,并使用一个名为GDCM
的linux库从解压缩的.dicom
文件中提取信息,最后将解压缩文件上传回Blob存储。
在AWS Lambda中,我可以通过为lambda函数创建一个层来很好地做到这一点:
创建图层时,必须将库的所有内容文件捆绑到.zip文件存档中。您可以从Amazon Simple Storage Service(Amazon S3)或本地计算机将.zip存档文件上传到图层。Lambda在设置函数的执行环境时将层内容提取到/opt
目录中。
为了实现同样的目标,我是否需要构建一个包含GDCM linux库的自定义linux映像?这意味着我必须使用Premium计划。
或者我可以通过使用消费计划来实现相同的目标吗?
1条答案
按热度按时间csga3l581#
张贴我的意见作为对社区的回答。
WEBSITE_RUN_FROM_PACKAGE- 1
设置。此设置将从压缩包中执行您的函数。字符串
x1c 0d1x的数据
请参阅此document以了解Azure函数的zip部署。
关于GDCM库,您可以将the.zip包含库文件的www.example.com软件包上传到您的函数应用程序中。在配置函数的执行环境时,库文件将被提取到/opt目录中。
您可以按照以下步骤操作-
在函数应用程序的项目根目录中,创建一个名为bin的文件夹。
您可以通过在Kudu Console中创建Function应用程序来访问Function应用程序的根目录:-
的
将GDCM库文件复制到bin文件夹中。将以下行添加到function.json文件中,将www.example.com替换libgdcm.so为GDCM库文件的名称,如下所示:
函数.json
型
使用您选择的工具,a.zip为您的项目创建www.example.com捆绑包。The.zip包应上传到Azure中的功能应用程序。在配置函数的执行环境时,库文件将被提取并放置在/opt目录中。
一种替代方法是将Function应用程序停靠化,并在Azure Function停靠文件中安装自定义linux库,然后进行部署。