"Dekoder jpeg nicht verfügbar" mit Pillow auf AWS Elastic Beanstalk

8

Ich habe Probleme mit JPEG-Dateien in Python unter AWS Elastic Beanstalk.

Ich habe dies auf .expexensions / python.config-Datei:

%Vor%

Also ich glaube, ich habe libjpeg installiert und funktioniert (ich versuchte libjpeg-devel, aber yum kann dieses Paket nicht finden).

Auch ich habe dies auf meine Anforderungen.txt:

%Vor%

Ich glaube, ich habe Pillow installiert und arbeite an meiner Umgebung.

Dann, da ich Pillow und libjpeg habe, versuche ich etwas Arbeit mit PIL.Image in einem Python-Skript zu machen und in eine Datei zu speichern. So:

%Vor%

Wenn ich jedoch versuche, es auf der Instanz von Elastic Beanstalk auszuführen, ist die Ausnahme "decoder jpeg not available" beim Aufruf der .save () -Methode.

Wenn ich SSH in meine Instanz einfüge, funktioniert es gut und ich habe bereits versucht, die Umgebung neu zu erstellen.

Was mache ich falsch?

UPDATE:

Wie vorgeschlagen, ich SSHed wieder in die Instanz und neu installiert Pillow durch Pip (/ opt / python / run / venv / bin / pip), nicht bevor ich hatte sicher libjpeg-devel war auf der Umgebung vor Pillow.

Ich habe selbsttest.py ausgeführt und es wurde bestätigt, dass ich Unterstützung für JPEG hatte. Also, in einem letzten Versuch ging ich zu "Neustart App Server" auf Elastic Beanstalk-Schnittstelle. Es funktionierte.

Danke euch allen.

    
Pedro Alves 30.07.2014, 18:11
quelle

2 Antworten

8

Nach dem allgemeinen Rat von hier , das habe ich gelöst, indem ich in meiner .expextensions-Konfiguration Folgendes hinzugefügt und erneut implementiert habe.

%Vor%     
Mav3rick 11.08.2015 07:23
quelle
3

Wie vorgeschlagen, ich SSHed wieder in die Instanz und neu installiert Pillow durch pip (/ opt / python / run / venv / bin / pip), nicht bevor ich hatte sicher libjpeg-devel war in der Umgebung vor Pillow.

Ich habe selftest.py ausgeführt und bestätigt, dass ich Unterstützung für JPEG hatte. Also, in einem letzten Versuch ging ich zu "Neustart App Server" auf Elastic Beanstalk-Schnittstelle. Es hat funktioniert.

    
Pedro Alves 01.08.2014 17:50
quelle