2015-05-11 15 views
8

Nel Heroku tutorial, c'è un pezzo di codiceHeroku Flask Tutorial Procfile Significato

hello.py

import os 
from flask import Flask 

app = Flask(__name__) 

@app.route('/') 
def hello(): 
    return 'Hello World!' 

e un Procfile:

web: gunicorn hello:app --log-file=-

La parte questo è davvero confuso è la parte hello:app; hello si riferisce alla funzione hello() o allo script ciao.py? A seconda del significato di ciò, cosa significa l'intera istruzione Procfile?

risposta

5

ProcFile contiene la riga di comando per l'avvio dell'applicazione su heroku. La documentazione completa può essere trovata qui: https://devcenter.heroku.com/articles/procfile

In questo caso sta dicendo a heroku di usare la variabile app (la tua app costruita) nel modulo hello con gunicorn e di avviare un processo web (uno in grado di gestire le richieste http). Esistono altri tipi di processi che è possibile specificare come dipendenti in background.

L'oggetto dell'applicazione flask è un'applicazione WSGI e può essere eseguito utilizzando qualsiasi server WSGI. Gunicorn è solo una delle scelte su heroku.

Problemi correlati