Ok, I changed some things around and got the graphs to render!
I changed all of the Bokeh server code to run in it’s own Docker container, then I accessed that URL. That way I was able to see the log data in the terminal. In docker compose, I just used the service name in the url that hosted the bokeh app.
http://visualization:5011/plot
In the returned script tag, the url still refers to “visualization”, which is the name of my docker compose service that my computer won’t know how to resolve, so I had to do a find-replace to replace it with localhost, and then it rendered correctly in my browser.
plot = server_document(os.environ.get('BOKEH_URL'))
plot= test_plot.replace("visualization", "localhost")
One issue I am seeing though that I don’t know how to resolve is if there is a way to have multiple end-points/applications within the same bokeh server instance? If not, then I will have to create a separate Docker container for every Bokeh plot that I want to render. The Flask embed method had a handy way of making multiple Bokeh endpoints/plots available via the following method:
bokeh_tornado = BokehTornado({'/plot1': plot1, \
'/plot2':plot2, '/plot3':plot3}...
Is there a way to do the same thing when starting Bokeh from the command line?
bokeh serve plot1.py plot2.py plot3.py
The below link mentions that it is possible, but I just want to verify that this is the recommended method to serve multiple plotting scripts and have different endpoints
I mainly just need a way to access different plots at different endpoints if possible.