2013-11-03 11 views
6

Bir Flask uygulamasını Heroku ile dağıtmaya çalışıyorum. Bu basit bir API. Ustabaşı ile harika yerel çalışır ama ben heroku başlarken hata (log aşağıda) olsun.Flask uygulaması, heroku sunucusundan başlamıyor

at=error code=H14 desc="No web processes running" method=GET path=/ host=blooming-taiga-1210.herokuapp.com fwd="188.33.19.82" dyno= connect= service= status=503 bytes= 

ve: Bu Heroku log edilir

import flask 
import flask.ext.sqlalchemy 
import flask.ext.restless 

app = flask.Flask(__name__) 
app.config['DEBUG'] = True 
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://user:[email protected]/db' 
db = flask.ext.sqlalchemy.SQLAlchemy(app) 


from sqlalchemy import Column, Integer, String, ForeignKey,\ 
    Date, DateTime, Boolean, Float 


class fruits(db.Model): 
    __tablename__ = 'fruits' 
    id = Column(Integer, primary_key=True) 
    name = Column(String(50),nullable=False) 
    calories = Column(Integer, nullable=False) 
    amount = Column(Integer, nullable=False) 
    unit = Column(String(10),nullable=False) 
    url = Column(String(100),nullable=True) 


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


# Create the database tables. 
db.create_all() 

# Create the Flask-Restless API manager. 
manager = flask.ext.restless.APIManager(app, flask_sqlalchemy_db=db) 

# Create API endpoints, which will be available at /api/<tablename> by 
# default. Allowed HTTP methods can be specified as well. 
manager.create_api(fruits, methods=['GET', 'POST', 'DELETE']) 
manager.create_api(tmp, methods=['GET', 'POST', 'DELETE']) 


# start the flask loop 

if __name__ == '__main__': 
     import os 
     port = int(os.environ.get('PORT', 33507)) 
     app.run(host='0.0.0.0', port=port) 

:

Bu benim app kodu (Ben biliyorum ama bir blok görünümlü, ama dosyalara bölmek problem) 'dir benim Procfile:

web: python __init__.py 
+0

Harici mysql sunucu kullanıyor musunuz? – zero323

cevap

18

aslında bir çalışan dyno var web denilen mı? Bu scale your web dyno unutmuş olabilir gibi görünüyor:

sizin Procfile böyle bir girdi ekleyin:

heroku ps:scale web=1 

Sen web Dyno çalıştığını doğrulamak için

heroku ps 

kullanabilirsiniz.

+1

Konsolda yaptığımda çalışır, Procfile'de yok. Teşekkürler! –

+0

Yükseltemiyorum. Daha az itibar için;) –

+0

Kutsal cehennem, bunların hiçbir yerde dağıtımcı dokümanlarında olduğuna inanamıyorum. – Chris