美文网首页程序员
部署 Plotly Dash 到 AWS Elastic Bea

部署 Plotly Dash 到 AWS Elastic Bea

作者: 数科每日 | 来源:发表于2020-11-16 15:39 被阅读0次

    Plotly Dash 是一个非常流行的纯 Python 的交互式数据可视化 Web框架, 可以让开发者在不懂 js 的情况下, 发布自己的 Data Visualization Web Application,这一点对数据科学家们非常友好。 Plotly Dash 官方网站。 这里介绍一下, 如何用 AWS Elastic Beanstalk 将自己的 Plotly Dash "瞬间" 部署上线。

    1. 创建一个 Plotly Dash Demo 应用

    1.1 创建 Python 环境

    # 创建虚拟环境
    virtualenv env
    
    # 安装Dash 包
    pip install dash
    
    # 导出python 以来包
    pip freeze > requirements.txt
    

    1.2 编写Demo

    这里直接使用 Deme Code

    import dash
    import dash_core_components as dcc
    import dash_html_components as html
    ########### Initiate the app
    external_stylesheets = ['https://codepen.io/chriddyp/pen/bWLwgP.css']
    app = dash.Dash(__name__, external_stylesheets=external_stylesheets)
    application = app.server
    app.title='Dash on AWS EB!'
    ########### Set up the layout
    app.layout = html.Div(children=[
        html.H1(children='Hello Dash'),
        html.Div(children='''
                This is Dash running on Elastic Beanstalk.
            '''),
        dcc.Graph(
                id='example-graph',
                figure={
                    'data': [
                        {'x': ['left', 'center', 'right'], 'y': [3,7,6], 'type': 'bar', 'name': 'category 1'},
                        {'x': ['left', 'center', 'right'], 'y': [4,2,5], 'type': 'bar', 'name': 'category 2'},
                    ],
                    'layout': {
                        'plot_bgcolor': 'lightgray',
                        'title': 'Graph Title',
                        'xaxis':{'title':'x-axis label'},
                        'yaxis':{'title':'y-axis label'},
                    },
                }
            )
    ])
    ########### Run the app
    if __name__ == '__main__':
        application.run(debug=True, port=8080)
    

    注意

    Elastic Beanstalk 会使用 application 作为程序起点, 这一行不能修改。

    application = app.server
    

    1.3 本地测试

    可以在本地运行, 进行测试。

    python application.py
    
    image.png

    2. 打包部署应用

    1.1 打包

    zip myfiles.zip requirements.txt application.py
    

    1.2 打开AWS Elastic Beanstalk 页面, 创建新 Application

    image.png

    1.3 填写应用信息

    image.png

    1.4 上传应用

    image.png

    1.5 等待系统部署完毕

    image.png image.png

    1.6 部署完成

    image.png

    相关文章

      网友评论

        本文标题:部署 Plotly Dash 到 AWS Elastic Bea

        本文链接:https://www.haomeiwen.com/subject/ppqzbktx.html