如何组织一个阴谋破折项目?

时间:2017-06-25 08:45:16

标签: plotly plotly-dash

我想弄清楚如何组织一个包含多个应用的​​短划线项目。所有示例都是单页应用程序,我希望将多个破折号组织为一个由gunicorn运行的项目(在docker容器内):

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

这是正确的方法吗?如果有的话,run.pyrun.sh内应包含哪些内容?我如何使用gunicorn来提供多个应用程序?

1 个答案:

答案 0 :(得分:9)

使用最新(主)版本的破折号,您可以构建一个多应用程序项目!

结构

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服务(可以很容易地与nginx一起使用)

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