Я хочу разместить свое приложение сервера bokeh в Azure Web App Services.Следуя примеру в flask_embed.py , я создал минимальный пример с серверным процессом bokeh, запущенным на localhost: 5006 и обслуживающим его с server_document
по маршруту фляги.Локально, на моем компьютере, он работает нормально без каких-либо ошибок:
from threading import Thread
from bokeh.embed import server_document
from bokeh.server.server import Server
from bokeh.models.widgets import Select, Div
from bokeh.layouts import column
from flask import Flask
from flask import render_template
from tornado.ioloop import IOLoop
app = Flask(__name__)
# This is the bokeh page
def modify_doc(doc):
dropdown = Select(title="Cities", options=["New York", "Berlin"])
title_row = Div(text="Home Page")
main_layout = column([
title_row,
dropdown
])
doc.add_root(main_layout)
doc.title = "My bokeh server app"
# This is the subprocess serving the bokeh page
def bk_worker():
server = Server(
{'/bkapp': modify_doc},
io_loop=IOLoop(),
allow_websocket_origin=["*"],
)
server.start()
server.io_loop.start()
Thread(target=bk_worker).start()
# This is the flask route showing the bokeh page
@app.route("/", methods=["GET"])
def my_app():
script = server_document("http://localhost:5006/bkapp")
return render_template("embed.html", script=script, template="Flask")
Однако, когда я помещаю его в веб-приложение Azure, страница становится пустой, и при проверке страницы отображается сообщение об ошибке:
GET https://<my-azure-site>.azurewebsites.net:5006/bkapp/autoload.js?bokeh-autoload-element=0bfb1475-9ddb-4af5-9afe-f0c4a681d7aa&bokeh-app-path=/bkapp&bokeh-absolute-url=https://<my-azure-site>.azurewebsites.net:5006/bkapp net::ERR_CONNECTION_TIMED_OUT
Похоже, у меня нет доступа к локальному узлу удаленного сервера Azure.На самом деле, мне пока не ясно, работает ли сервер bokeh / разрешено ли вообще работать.В функции server_document
я попытался поставить server_document("<my-azure-site>:5006/bkapp")
, но проблема остается той же.
Любая помощь приветствуется.
Этот пост связан с другим вопросом: Боке встроено в колбу в лазурном веб-приложении