Установка Dash

Dash - фреймворк Python с открытым исходным кодом, используемый для создания аналитических веб-приложений. В данной статье мы расскажем, как с лёгкостью установить данный фреймворк у нас на хостинге.

Алгоритм по установке Dash

  • Шаг 1После создания технического домена (для примера мы создали dash-test.com), переходим в раздел SSH через панель управления хостингом и нажимаем Открыть SSH клиент (доступен только для оплаченных аккаунтов). Для начала создадим несколько алиасов:

    echo "alias python='/opt/python3/bin/python3.6'" >> ~/.bashrc
    echo "alias pip='/opt/python3/bin/pip3.6'" >> ~/.bashrc
    echo "alias virtualenv='/opt/python3/bin/virtualenv'" >> ~/.bashrc
    source ~/.bashrc

    Теперь необходимо создать виртуальное окружение, чтобы иметь возможность создавать проекты и использовать свои модули:

    cd dash-test.com/htdocs/www
    virtualenv virtualenv
    source virtualenv/bin/activate
  • Шаг 2Для установки Dash Вам потребуется пакетный менеджер pip. Менеджер pip позволяет загружать пакеты и управлять ими:

    ./virtualenv/bin/pip install dash==0.43.0
    ./virtualenv/bin/pip install dash-daq==0.1.0

    За актуальными версиями можно обратиться сюда.

    Необходимые пакеты установились в директорию ~/dash-test.com/htdocs/www/virtualenv/lib/python3.6/site-packages. Проверим работоспособность фреймворка.

  • Шаг 3Откроем вкладку файлового менеджера и перейдём в директорию, обозначенную выше (~/dash-test.com/htdocs/www/virtualenv/lib/python3.6/site-packages).

    Создадим новый файл app.py и наполним его следующим содержимым:

    import dash
    import dash_core_components as dcc
    import dash_html_components as html
    
    external_stylesheets = ['https://codepen.io/chriddyp/pen/bWLwgP.css']
    
    app = dash.Dash(__name__, external_stylesheets=external_stylesheets)
    
    app.layout = html.Div(children=[
        html.H1(children='Hello Dash'),
    
        html.Div(children='''
            Dash: A web application framework for Python.
        '''),
    
        dcc.Graph(
            id='example-graph',
            figure={
                'data': [
                    {'x': [1, 2, 3], 'y': [4, 1, 2], 'type': 'bar', 'name': 'SF'},
                    {'x': [1, 2, 3], 'y': [2, 4, 5], 'type': 'bar', 'name': u'Montréal'},
                ],
                'layout': {
                    'title': 'Dash Data Visualization'
                }
            }
        )
    ])
    
    if __name__ == '__main__':
        app.run_server(host='внешний ip')
        app.run_server(debug=True)

    Чтобы узнать внешний ip-адрес сервера, можно отправить ping-запрос или помотреть его командой ifconfig -a

    Далее вернёмся в Web SSH и запустим данный скрипт:

    cd ./virtualenv/lib/python3.6/site-packages
    python app.py

    Далее открываем Ваш сайт на порту :8050 - если Вы видите график как показано ниже, а в Web SSH отдаётся response с заголовками, то Вы всё сделали верно. Фреймворк готов к использованию.

    Статистика от Dash

Удачной работы! Если возникнут вопросы - напишите нам, пожалуйста, тикет из панели управления хостингом, раздел «Помощь и поддержка».