C'è un sacco di problemi di configurazione che possono sorgere con Flask distribuito su AWS. Mi sono imbattuto in un problema simile a te, quindi posso almeno mostrarti cosa ho fatto per risolvere l'errore WSGI.
In primo luogo, a quanto pare si può fare questo senza la cartella .ebextensions (vedere questo post here .e guardare la risposta di davetw12. Tuttavia, essere consapevoli del fatto che mentre questo funziona, non sono del tutto sicuro che la conclusione di davetw12 su .ebextensions è corretto, basato su alcuni dei commenti seguenti). Invece, (nel Terminale), ho navigato nel mio progetto allo stesso livello della mia directory .elasticbeanstalk e ho usato il comando eb config
. Questo aprirà un elenco di opzioni che è possibile impostare per configurare l'applicazione di beanstalk. Scendi le opzioni fino a trovare il percorso WSGI. Ho notato che hai il tuo impostato su project/application.py
, tuttavia, questo non dovrebbe includere il riferimento alla cartella, solo application.py
. Ecco come appare sul mio Mac nel terminale (il percorso WSGI è vicino al fondo).
Si noti che una volta che si ottiene quel set, EB probabilmente ridistribuire. Va bene. Lasciarlo - Lascialo.
Una volta ottenuto questo set, vai nel tuo file application.py e assicurati di chiamare l'app application
. Ad esempio, il mio aspetto:
from flask import Flask
from flask import render_template
application = Flask(__name__)
@application.route('/')
@application.route('/index')
def index():
return render_template('index.html',
title='Home')
Questo ha portato via l'errore percorso WSGI - anche se ho ancora dovuto risolvere alcuni altri problemi che seguono questo :-) Ma questo è un diverso insieme di domande.
Ho un problema simile, e usando 'eb config' ho scoperto che WSGIPath non è nei miei dati di configurazione - in effetti non ottengo nulla per aws: elasticbeanstalk: container: python. L'ho impostato in un file .config, ma sembra essere stato sovrascritto dalla configurazione salvata nella Dashboard - che visualizza 'WSGIPath: application.py' nella pagina principale, ma non mi consente di modificarlo da nessuna parte. Sembra che dovrò solo creare un'applicazione.py! – Kylotan
Abbiamo avuto un problema con psycopg2 non installato. l'aggiunta di quelle linee ai nostri .ebextensions/01-app.config di file riparato: pacchetti: yum: postgresql93-devel: [] –
sono d'accordo con la risposta di davetw12 che EBCONFIG non è più rilevante - vedere il mio commento lì. voi ragazzi diffondete inavvertitamente informazioni errate – HaveAGuess