2017-06-25 96 views
4

我想弄清楚如何組織一個帶有多個應用程序的破折號項目。所有的例子都是單頁的應用程序,我想擁有組織爲一個項目運行由gunicorn(泊塢窗容器內)的多個破折號:如何組織一個陰謀破折號項目?

dash-project/ 
    app1/ 
    layout.py 
    data.py 
    app2/ 
    layout.py 
    data.py 
    run.py(or run.sh) 

這是要走的路嗎?如果有的話,run.pyrun.sh裏面應該是什麼?我如何使用gunicorn爲多個應用程序提供服務?

+0

我相信它會被解僱了類似的燒瓶中的應用程序,但我不知道 – rgalbo

+0

這是堆棧溢出有史以來第一個問題在陰謀破折號,或至少第一個與該標籤。很酷。 –

+0

我相信會有更快的。這是一個非常有前途的項目。 – volodymyr

回答

3

隨着破折號的最新(主)版本,你可以建立一個多應用程序項目!

結構

dash-project/ 
    app1/ 
    app.py 
    datamodel.py 
    app2/ 
    app.py 
    datamodel.py 
    mycomponents/ 
    ... 
    server.py 
    run.py 

APP1/app.py:

import dash 
import app1.datamodel 
.. 
from server import server 

app = dash.Dash(name='app1', sharing=True, 
       server=server, url_base_pathname='/app1') 

server.py

from flask import Flask 
server = Flask(__name__) 

run.py

from server import server as application 

import app1.app 
import app2.app  

即成使用uwsgi(可以很容易地exended與nginx的使用)

uwsgi --http 0.0.0.0:5000 --processes 4 --wsgi-file run.py