Here is the system console just after loading the bokeh 2.4.3
app in Chrome -
2023-06-12 23:02:04,393 Starting Bokeh server version 2.4.3 (running on Tornado 6.3.2)
2023-06-12 23:02:04,394 User authentication hooks NOT provided (default user enabled)
2023-06-12 23:02:04,396 Bokeh app running at: http://localhost:5007/bkh
2023-06-12 23:02:04,396 Starting Bokeh server with process id: 29183
2023-06-12 23:02:11,424 WebSocket connection opened
2023-06-12 23:02:11,425 ServerConnection created
And browser console for same -
Here is the system console for bokeh 3.1.1
(did not open the WebSocket connection)
2023-06-12 23:03:28,810 Starting Bokeh server version 3.1.1 (running on Tornado 6.3.2)
2023-06-12 23:03:28,940 User authentication hooks NOT provided (default user enabled)
2023-06-12 23:03:28,942 Bokeh app running at: http://localhost:5008/bkh
2023-06-12 23:03:28,942 Starting Bokeh server with process id: 29222
and here is the browser console
The root cause seems to be that bokeh 3.1.1
cannot access static/js/bokeh.min.js
whereas bokeh 2.4.3
can access that resource.
This is the browser page source with bokeh 2.4.3
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Bokeh Application</title>
<script type="text/javascript" src="static/js/bokeh.min.js?v=3c61e952
and the link to bokeh.min.js
contains the IP of the cloud server - http://10.144.240.35:5007/static/js/bokeh.min.js?v=3c6...
However with bokeh 3.1.1
the link to bokeh.min.js
in the page source is an absolute path that can’t be reached -
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Bokeh Application</title>
<style>
html, body {
box-sizing: border-box;
height: 100%;
margin: 0;
padding: 0;
}
</style>
<script type="text/javascript" src="http://localhost:5007/static/js/bokeh.min.js?v=c8d
For this reason bokeh 3.1.1
will properly run the minimal example on a laptop where the absolute path above to bokeh.min.js
is valid. However the case of using a cloud server (my case) will not work.