2016-03-24 17 views
1

Flask uygulamamı WebFaction üzerinde dağıtıyorum. Ben bir Özel Websocket App (bağlantı noktası dinleme) ile dağıtmak için bana yol açan flask-socketio kullanıyorum. Flask-socketio, benim ana python betiğimde call socketio.run (app, port = < port_listening_on>) ile başlatmaya başlatarak uygulamamı konuşlandırmamı emrediyor. Sunucuya eventlet yükledim, bu yüzden socketio.run uygulaması eventlet web sunucusunda çalıştırmalı.Bir flask uygulaması çalıştırmak için denetleyiciyi kullanma

Python'u < app> .py'den arayabilirim ve tüm işlemler harika çalışır - sunucu çalışır, etki alanında çalışabilir, yuva çalışır, vb. Sorunlarımı uzun bir çalışma sürecine dönüştürdüğümde başlar. Ben yüklemiş danışmanı kullanmaları tavsiye ve bu talimatları izleyerek benim webapp üzerinde yapılandırılmış oldum:

Exited too quickly 
: gözetmen ile benim uygulamamız hatalarını çalıştırmak için aslında komutu ekledikten sonra https://community.webfaction.com/questions/18483/how-do-i-install-and-use-supervisord-to-control-long-running-processes

sorundur

benim günlük durumları yukarıdaki hata yanı sıra:

Üstüm yapılandırma dosyasında
(exit status 1; not expected) 

şu anda aşağıdaki program yapılandırma vardır:

[program:<prog_name>] 
command=/usr/bin/python2.7 /home/<user>/webapps/<app_name>/<app>.py 
autostart=true 
autorestart=true 

Kaldırma ve ekleme ayarlarını denedim ama hepsi de aynı FATAL hatasına yol açıyor.

+1

Denetleyicinin uygulamayı çalıştırdığı sırada neler olduğunu görebilmek için dosyalara stdout ve stderr çıkışı göndermek için seçenekler ekleyin. Farklı bir kullanıcının altında çalışabilir (altında çalışacak bir kullanıcı belirlemediniz). – Miguel

+1

Bir çözüm buldunuz mu? Burada aynı sorunu yaşıyorum ... – albert

cevap

0

Bu benim denetleyici yapılandırmamın bir parçası gibi görünüyor, benim flask uygulamasını çalıştırmak için gunicorn kullanıyorum.

Ayrıca, hataların denetleyici yapılandırmasından bir dosyaya kaydedilmesini sağlıyorum, eğer bunu yaparsanız, neden düzgün başlamadığını görmenize yardımcı olabilir.

[program:gunicorn] 
command=/juzten/venv/bin/gunicorn run:app --preload -p rocket.pid -b 0.0.0.0:5000 --access-logfile "-" 
directory=/juzten/app-folder-name 
user=juzten 
autostart=true 
autorestart=unexpected 
stdout_logfile=/juzten/gunicorn.log 
stderr_logfile=/juzten/gunicorn.log 
İlgili konular