(Nginx) + Gunicorn + Настой + Боке на Лазурной с AD - PullRequest
0 голосов
/ 30 апреля 2019

(Извинения: я новичок в веб-приложении.)

ТРЕБОВАНИЯ:

  • Веб-приложение служб приложений Azure
  • Требуется Azure AD для аутентификации пользователей
  • Приложение Python Bokeh для отображения веб-приложения данных после аутентификации пользователя

ПОПЫТКА:

  • Я попытался обернуть приложение Flask вокруг Bokeh, используя этот пример После многих итераций я не могу получить весь трафик до боке после аутентификации.Я пробовал flam redirect (), и моя последняя итерация включает использование запросов get () из примера в ссылке.

.

...
from requests import get
...
@app.route('/')
def bkapp_page():
    script = server_document('https://myapp.azurewebsites.net/bkapp')
    return render_template("embed.html", script=script, template="Flask")

@app.route('/bkapp', defaults={'path': ''})
@app.route('/bkapp/<path:path>")
def bkapp(path):
    return get(f'http://localhost:5006/bkapp/{path}').content
...

ПРОБЛЕМА: - Несмотря наво многих итерациях я не могу получить шаблон bokeh рендеринга (который указывает на javascript, который обслуживает сервер) для указания пути, который успешно отображает страницу.Лучшее, что я сделал, - это чтобы конечная точка / bkapp не выдала мне ошибку 404.- Python Bokeh работает на порте 5006, а колба работает на 8000. Мне нужно перенаправить весь трафик, предназначенный для боке (после аутентификации), на боке через колбу.(Службы приложений Azure, по-видимому, разрешают только один открытый порт, если вы не настраиваете контейнер, которого я хотел бы избежать.)

АЛЬТЕРНАТИВЫ?:

  • Сидите nginx перед оружейными использовать «обратный прокси» для отправки всего трафика на боке.(Могу ли я сделать это безопасно?) Но мне придется создать собственный контейнер.Я бы предпочел сделать это только с помощью Gunicorn + колба + боке, если это возможно.
  • Не стесняйтесь предлагать что-нибудь еще.Я хотел бы использовать только Gunicorn + колбу + боке, но если мне нужен другой метод, я приведу к этому.Спасибо!
...