Amazon web services 如何在NodeJS中从AWS Lambda调用ImageMagick?

Amazon web services 如何在NodeJS中从AWS Lambda调用ImageMagick?,amazon-web-services,aws-lambda,imagemagick,imagemagick-convert,Amazon Web Services,Aws Lambda,Imagemagick,Imagemagick Convert,这是我试过的 我在AWS Lambda中将ImageMagick创建为一个层 下面是我如何调用转换代码的 const { spawnSync } = require("child_process") const { readFileSync, writeFileSync, unlinkSync } = require("fs") const AWS = require("aws-sdk") var fs

这是我试过的

我在AWS Lambda中将ImageMagick创建为一个层

下面是我如何调用转换代码的

    const { spawnSync } = require("child_process")
    const { readFileSync, writeFileSync, unlinkSync } = require("fs")
    const AWS = require("aws-sdk")
    var fs = require("fs")
    const s3 = new AWS.S3()
    var path = require('path')
    var os = require('os')


    module.exports.handler = async (event, context) => {

            try {

                let imageURL = 'https://via.placeholder.com/600.png'
                let fileName = "magik.png"
                let bucket = "testing-image"
                
                let id = context.awsRequestId
                let workdir = os.tmpdir()
                
                let outputFile = path.join(workdir, 'converted-' + id + ".png");

                console.log("Output File Path>>>>", imageURL); 


                let spawn = spawnSync(
                    "/opt/bin/convert",
                    [
                        imageURL,
                        "-resize",
                        "50%",
                        outputFile
                    ],
                    { stdio: ['inherit', 'inherit', 'pipe'] }
                )
                
                if (spawn.stderr) {
                console.log("Spawn error>>>>>"+ Error(spawn.stderr))
                process.exitCode = 1;
                }

            } catch (e) {

                console.log("Exception in Lambda Fn >>>>>>>", e)

            }

    }
当我运行此操作时,我不断遇到以下错误:

Spawn error>>>>>Error: convert: delegate failed `'curl' -s -k -L -o '%o' 'https:%M'' @ 
error/delegate.c/InvokeDelegate/1867.
convert: unable to open file '/tmp/magick-23JJ4ectjZG7CF': No such file or directory @ 
error/constitute.c/ReadImage/596.
convert: no images defined `/tmp/converted-69f6a8ae-2bdd-4a7b-a9c4-75f22f93c821.png' @ 
error/convert.c/ConvertImageCommand/3300.
END RequestId: 69f6a8ae-2bdd-4a7b-a9c4-75f22f93c821
当我在mac中从终端尝试以下代码时,它工作得非常好:

magick convert 'https://via.placeholder.com/600.png' -resize 50% outputImage.png
我在Lambda中错过了什么