Graphicsmagick не работает в Elastic Beanstalk с nodejs и S3
Я использую nodejs и graphicsmagick для обработки изображений с текстом, а затем передаю финальный JPG на S3.
Используя почтальон, я смог проверить этот поток на моем локальном хосте, и все работает отлично. Тем не менее, у меня возникли проблемы сейчас, когда я переместил его в Elastic Beanstalk. Когда я отправляю сообщение в конечную точку, он загружает пустой файл на S3, и в EB не регистрируются ошибки. Я думаю, что это как-то связано с программным обеспечением, но я немного застрял. Любой совет приветствуется! Спасибо!
Верхний файл от localhost, нижний от Elastic Beanstalk: http://cl.ly/image/0O231k171N0W
var gm = require('gm');
var appRoot = require('app-root-path').path;
function createImage(caption, res) {
var originalImage = '/images/2015-02-24.jpg';
var textColor = 'white';
gm(appRoot + originalImage)
.fill(textColor)
.font( appRoot + '/fonts/BentonSans-Book.otf')
.drawText(0, 0, caption, 'Center')
.stream(function(err, stdout, stderr) {
sendToS3(err, stdout, stderr, originalImage, res);
});
}
function sendToS3(err, stdout, stderr, originalImage, client_response) {
var imageName = shortId.generate();
var buff = new Buffer('');
stdout.on('data', function(data) {
buff = Buffer.concat([buff, data]);
});
stdout.on('end', function(data) {
var data = {
Bucket: S3_bucket,
Key: imageName + '.jpg',
Body: buff,
ContentType: mime.lookup(originalImage)
};
s3.putObject(data, function(err, res) {
client_response.send('done');
});
});
}
================================================== =============
РЕДАКТИРОВАТЬ: Вместо потоковой передачи на S3, я изменил его для записи непосредственно в файловую систему. Ошибка в журналах AWS EB:
err { [Error: Command failed: gm convert: Request did not return an
image.] code: 1, signal: null }
Я считаю, что мне не хватает некоторых зависимостей для ImageMagick. Какие-нибудь мысли?
Это от бегаконвертировать - версия в моем местном терминале:
Version: ImageMagick 6.8.9-7 Q16 x86_64 2014-08-31
http://www.imagemagick.org
Copyright: Copyright (C) 1999-2014 ImageMagick Studio LLC
Features: DPC Modules
Delegates: bzlib freetype jng jpeg ltdl lzma png xml zlib
Это от бегаконвертировать - версия в моем экземпляре EC2 (раздел «Делегаты» пуст):
Version: ImageMagick 6.9.1-1 Q16 x86_64 2015-04-10
http://www.imagemagick.org
Copyright: Copyright (C) 1999-2015 ImageMagick Studio LLC
License: http://www.imagemagick.org/script/license.php
Features: DPC OpenMP
Delegates (built-in):