Sirviendo figura interactiva bokeh en heroku
Estoy tratando de servir un servicio interactivobokeh
figura a través de heroku. La cifra que intento haber servido es esencialmente equivalente a esta (ejemplo, código) Soy nuevo en ambosbokeh
yheroku
así que estoy bastante seguro de que me estoy perdiendo algo bastante básico: creo que lo que estoy tratando de hacer debería ser bastante sencillo.
Primero, puedo servir mi figura localmente usando elbokeh serve --show myapp
mando. Dóndemyapp
es el nombre del módulo de Python que incluye elbokeh
figura. Tenga en cuenta que el--show
la bandera solo solicitabokeh
abrir una ventana del navegador una vez que se construye la figura y el servidor se está ejecutando.
A continuación, he configurado unheroku
cuenta, y creé mi primera aplicación, siguiendo los pasos enHeroku - Comenzando con Python tutorial. Mi repositorio git incluyemyapp
, unarequirements.txt
archivo yProcfile
.
Por desgracia, algo no funciona y estoy perplejo. He probado un montón de opciones diferentes en miProcfile
Y ninguno ha funcionado. Desde elbokeh serve ...
el comando inicia un servidor, no deberíaProfile
que se parece a esto haz el truco:
web: bokeh serve --port $PORT myapp
¿Debería funcionar eso? Quizás me falta algo y necesito crear unflask
aplicación que envuelve mibokeh
aplicación, pero por lo que puedo decir, eso no parece necesario. Tal vez alguien conozca un buen tutorial que reúna todos estos pasos, aún no he encontrado uno completo.
Actualizar: Estoy pegando un poco de miheroku
registros a continuación. Como manejas esto--host whitelist
¿problema?
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