Servindo a figura interativa de bokeh no heroku
Eu estou tentando servir um interativobokeh
figura via heroku. A figura que estou tentando exibir é essencialmente equivalente a esta (exemplo, código) Eu sou novo em ambosbokeh
eheroku
então tenho certeza de que estou perdendo algo bastante básico - acho que o que estou tentando fazer deve ser bem direto.
Primeiro, posso servir minha figura localmente usando obokeh serve --show myapp
comando. Ondemyapp
é o nome do módulo python que inclui obokeh
figura. Observe que o--show
sinalizar apenas solicitabokeh
para abrir uma janela do navegador assim que a figura for criada e o servidor estiver em execução.
Em seguida, configurei umheroku
e criei meu primeiro aplicativo, seguindo as etapas noHeroku - Introdução ao Python tutorial. Meu repositório git incluimyapp
, umarequirements.txt
arquivo eProcfile
.
Infelizmente, algo não está funcionando e estou perplexo. Eu tentei várias opções diferentes no meuProcfile
e nenhum funcionou. Desde obokeh serve ...
comando inicia um servidor, não deveriaProfile
que se parece com isso, faça o truque:
web: bokeh serve --port $PORT myapp
Isso deveria funcionar? Talvez esteja faltando alguma coisa e precise criar umflask
aplicativo que envolve meubokeh
aplicativo, mas até onde eu sei, isso não parece necessário. Talvez alguém saiba de um bom tutorial que reúne todas essas etapas, ainda não encontrei uma completa.
Atualizar: Estou colando um pouco da minhaheroku
logs abaixo. Como você lida com isso--host whitelist
questão?
2016-07-17T05:00:46.513139+00:00 heroku[slug-compiler]: Slug compilation started
2016-07-17T05:00:46.366909+00:00 heroku[api]: Deploy 9b63d8a by [email protected]
2016-07-17T05:00:46.367087+00:00 heroku[api]: Release v4 created by [email protected]
2016-07-17T05:00:46.624937+00:00 heroku[web.1]: State changed from crashed to starting
2016-07-17T05:00:55.188978+00:00 heroku[web.1]: Starting process with command `bokeh serve --port=39665 myapp.py`
2016-07-17T05:00:57.876287+00:00 app[web.1]: 2016-07-17 05:00:57,876 Starting Bokeh server on port 39665 with applications at paths ['/myapp']
2016-07-17T05:00:57.868758+00:00 app[web.1]: 2016-07-17 05:00:57,868 Starting Bokeh server version 0.12.0
2016-07-17T05:00:57.876378+00:00 app[web.1]: 2016-07-17 05:00:57,876 Starting Bokeh server with process id: 3
2016-07-17T05:00:58.800309+00:00 heroku[web.1]: State changed from starting to up
2016-07-17T05:00:59.970326+00:00 app[web.1]: 2016-07-17 05:00:59,970 Rejected connection from host 'myapp.herokuapp.com' because it is not in the --host whitelist
2016-07-17T05:00:59.973495+00:00 app[web.1]: 2016-07-17 05:00:59,970 403 GET / (XX.XX.XXX.XX) 1.29ms
2016-07-17T05:00:59.975282+00:00 heroku[router]: at=info method=GET path="/" host=myapp.herokuapp.com request_id=xxxxxxxxxxxxx fwd="XX.XX.XX.XX" dyno=web.1 connect=1ms service=4ms status=403 bytes=219