在 AWS LAMBDA 函数中调用 gdal2tiles.py
Calling gdal2tiles.py in AWS LAMBDA function
我正在尝试调用 gdal2tiles.py in AWS Lambda function using GeoLambda 图层。
我不知道如何从 lambda 函数调用此脚本。
到目前为止,我的 lambda 函数如下所示:
import json
import os
from osgeo import gdal
def lambda_handler(event, context):
os.system("gdal2tiles.py -p -z [0-6] test.jpg")
在日志中我有这个错误:sh: gdal2tiles.py: command not found
知道如何解决这个问题吗?谢谢。
一种方法是 import gdal2tiles
来自您添加到 lambda 函数的 GeoLambda
层的实用程序。
例如:
gdal2tiles.generate_tiles('/path/to/input_file', '/path/to/output_dir/'), nb_processes=2, zoom='0-6')
阅读 gdal2tiles
中的更多信息
编辑:
好的,我让它与这些附加到 lambda 的层一起工作。
前两层直接来自 Github
- arn:aws:lambda:us-east-1:552188055668:layer:geolambda-python:3
- arn:aws:lambda:us-east-1:552188055668:layer:geolambda:4
第 3 层是我们的 gdal2tiles
,它在本地创建并附加到 lambda 函数
- arn:aws:lambda:us-east-1:246990787935:layer:gdaltiles:1
您可以从 here
下载 zip
我希望您将以下 Environment vairable
添加到您的 lambda 函数配置中
- GDAL_DATA=/opt/share/gdal
- PROJ_LIB=/opt/share/proj(仅 GeoLambda 2.0.0+ 需要)
我正在尝试调用 gdal2tiles.py in AWS Lambda function using GeoLambda 图层。 我不知道如何从 lambda 函数调用此脚本。
到目前为止,我的 lambda 函数如下所示:
import json
import os
from osgeo import gdal
def lambda_handler(event, context):
os.system("gdal2tiles.py -p -z [0-6] test.jpg")
在日志中我有这个错误:sh: gdal2tiles.py: command not found
知道如何解决这个问题吗?谢谢。
一种方法是 import gdal2tiles
来自您添加到 lambda 函数的 GeoLambda
层的实用程序。
例如:
gdal2tiles.generate_tiles('/path/to/input_file', '/path/to/output_dir/'), nb_processes=2, zoom='0-6')
阅读 gdal2tiles
中的更多信息编辑: 好的,我让它与这些附加到 lambda 的层一起工作。 前两层直接来自 Github
- arn:aws:lambda:us-east-1:552188055668:layer:geolambda-python:3
- arn:aws:lambda:us-east-1:552188055668:layer:geolambda:4
第 3 层是我们的 gdal2tiles
,它在本地创建并附加到 lambda 函数
- arn:aws:lambda:us-east-1:246990787935:layer:gdaltiles:1
您可以从 here
下载 zip我希望您将以下 Environment vairable
添加到您的 lambda 函数配置中
- GDAL_DATA=/opt/share/gdal
- PROJ_LIB=/opt/share/proj(仅 GeoLambda 2.0.0+ 需要)