OpenGeoscience / geonotebook

A Jupyter notebook extension for geospatial visualization and analysis
Apache License 2.0
1.08k stars 141 forks source link

Docker container not showing the map #137

Closed nuest closed 6 years ago

nuest commented 6 years ago

I've tried to run geonotebook with Docker, but the map is not shown. Here's an the container log:

docker run -it --rm -p 8888:8888 geonotebook/geonotebook
[I 08:00:29.417 NotebookApp] Writing notebook server cookie secret to /root/.local/share/jupyter/runtime/notebook_cookie_secret
[W 08:00:29.550 NotebookApp] All authentication is disabled.  Anyone who can connect to this server will be able to run code.
[I 08:00:33.420 NotebookApp] geonotebook module enabled!
[I 08:00:33.439 NotebookApp] Serving notebooks from local directory: /notebooks
[I 08:00:33.439 NotebookApp] 0 active kernels 
[I 08:00:33.440 NotebookApp] The Jupyter Notebook is running at: http://0.0.0.0:8888/
[I 08:00:33.440 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[I 08:01:01.927 NotebookApp] 302 GET / (172.17.0.1) 0.60ms
[I 08:01:10.500 NotebookApp] Creating new notebook in 
[I 08:01:10.590 NotebookApp] Writing notebook-signing key to /root/.local/share/jupyter/notebook_secret
[I 08:01:15.345 NotebookApp] Kernel started: 489f016b-0679-4db9-b4ec-b142057f7b29
[I 08:01:23.734 NotebookApp] Created config for 489f016b-0679-4db9-b4ec-b142057f7b29
[I 08:01:23.743 NotebookApp] Adapting to protocol v5.0 for kernel 489f016b-0679-4db9-b4ec-b142057f7b29
[I 08:10:46.676 NotebookApp] Uploading file to /01_Example.ipynb
[I 08:12:50.763 NotebookApp] Saving file at /01_Example.ipynb
[W 08:13:07.789 NotebookApp] 404 GET /static/components/preact/preact.min.js.map (172.17.0.1) 22.05ms referer=None
[W 08:13:07.792 NotebookApp] 404 GET /static/components/proptypes/index.js.map (172.17.0.1) 1.64ms referer=None
[W 08:13:07.794 NotebookApp] 404 GET /static/components/preact-compat/preact-compat.min.js.map (172.17.0.1) 1.60ms referer=None

The view:

image

I've use the example notebook from https://github.com/OpenGeoscience/geonotebook/tree/master/notebooks

Afaics the browser log shows no JS errors.

Happy to provide more logs or debug info if you point me to it.

danlamanna commented 6 years ago

Are you using the geonotebook image from Dockerhub (geonotebook/geonotebook)? If so can you verify this still happens after deleting the stored image (docker rmi) and repulling?

If you're building the image yourself, can you confirm you're building on the latest master?

On Fri, Aug 18, 2017 at 01:20 AM, Daniel Nüst notifications@github.com wrote:

I've tried to run geonotebook with Docker, but the map is not shown. Here's an the container log:

docker run -it --rm -p 8888:8888 geonotebook/geonotebook
[I 08:00:29.417 NotebookApp] Writing notebook server cookie secret to /root/.local/share/jupyter/runtime/notebook_cookie_secret
[W 08:00:29.550 NotebookApp] All authentication is disabled.  Anyone who can connect to this server will be able to run code.
[I 08:00:33.420 NotebookApp] geonotebook module enabled!
[I 08:00:33.439 NotebookApp] Serving notebooks from local directory: /notebooks
[I 08:00:33.439 NotebookApp] 0 active kernels 
[I 08:00:33.440 NotebookApp] The Jupyter Notebook is running at: http://0.0.0.0:8888/
[I 08:00:33.440 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[I 08:01:01.927 NotebookApp] 302 GET / (172.17.0.1) 0.60ms
[I 08:01:10.500 NotebookApp] Creating new notebook in 
[I 08:01:10.590 NotebookApp] Writing notebook-signing key to /root/.local/share/jupyter/notebook_secret
[I 08:01:15.345 NotebookApp] Kernel started: 489f016b-0679-4db9-b4ec-b142057f7b29
[I 08:01:23.734 NotebookApp] Created config for 489f016b-0679-4db9-b4ec-b142057f7b29
[I 08:01:23.743 NotebookApp] Adapting to protocol v5.0 for kernel 489f016b-0679-4db9-b4ec-b142057f7b29
[I 08:10:46.676 NotebookApp] Uploading file to /01_Example.ipynb
[I 08:12:50.763 NotebookApp] Saving file at /01_Example.ipynb
[W 08:13:07.789 NotebookApp] 404 GET /static/components/preact/preact.min.js.map (172.17.0.1) 22.05ms referer=None
[W 08:13:07.792 NotebookApp] 404 GET /static/components/proptypes/index.js.map (172.17.0.1) 1.64ms referer=None
[W 08:13:07.794 NotebookApp] 404 GET /static/components/preact-compat/preact-compat.min.js.map (172.17.0.1) 1.60ms referer=None

The view:

image

I've use the example notebook from https://github.com/OpenGeoscience/geonotebook/tree/master/notebooks

Afaics the browser log shows no JS errors.

Happy to provide more logs or debug info if you point me to it.

-- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/OpenGeoscience/geonotebook/issues/137

nuest commented 6 years ago

Yes, the one from Docker Hub:

$ docker pull geonotebook/geonotebook
Using default tag: latest
latest: Pulling from geonotebook/geonotebook
Digest: sha256:1f363989c99f15e46999f0f009722759baa1809c7e582540475f99a4f4a47cda
Status: Image is up to date for geonotebook/geonotebook:latest

docker rmi geonotebook/geonotebook
 docker run -it --rm -p 8888:8888 geonotebook/geonotebook
Unable to find image 'geonotebook/geonotebook:latest' locally
latest: Pulling from geonotebook/geonotebook
d5c6f90da05d: Already exists 
[...]
8b4af12a454b: Pull complete 
Digest: sha256:1f363989c99f15e46999f0f009722759baa1809c7e582540475f99a4f4a47cda
Status: Downloaded newer image for geonotebook/geonotebook:latest
[I 11:00:32.373 NotebookApp] Writing notebook server cookie secret to /root/.local/share/jupyter/runtime/notebook_cookie_secret
[W 11:00:32.484 NotebookApp] All authentication is disabled.  Anyone who can connect to this server will be able to run code.
[I 11:00:36.508 NotebookApp] geonotebook module enabled!
[I 11:00:36.526 NotebookApp] Serving notebooks from local directory: /notebooks
[I 11:00:36.526 NotebookApp] 0 active kernels 
[I 11:00:36.526 NotebookApp] The Jupyter Notebook is running at: http://0.0.0.0:8888/
[I 11:00:36.526 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[I 11:05:11.653 NotebookApp] 302 GET / (172.17.0.1) 0.69ms
[I 11:05:40.059 NotebookApp] Uploading file to /01_Example.ipynb
[I 11:05:40.102 NotebookApp] Writing notebook-signing key to /root/.local/share/jupyter/notebook_secret
[I 11:05:44.071 NotebookApp] Kernel started: c2a64034-c279-4ff6-829a-d852f9bd808a
[W 11:05:54.610 NotebookApp] Timeout waiting for kernel_info reply from c2a64034-c279-4ff6-829a-d852f9bd808a
[I 11:05:58.050 NotebookApp] Created config for c2a64034-c279-4ff6-829a-d852f9bd808a
[I 11:05:58.078 NotebookApp] Adapting to protocol v5.0 for kernel c2a64034-c279-4ff6-829a-d852f9bd808a

No change in the UI. I now see errors in the browser console though (not sure if I just missed them last time):

Kernel: kernel_connected (c2a64034-c279-4ff6-829a-d852f9bd808a)  main.min.js:23577:13
actions jupyter-notebook:find-and-replace does not exist, still binding it in case it will be defined later...  main.min.js:33264:17
accessing "actions" on the global IPython/Jupyter is not recommended. Pass it to your objects contructors at creation time  main.min.js:36572:11
load_extensions Arguments { 0: "geonotebook/index", 1: "jupyter-js-widgets/extension", 2 more… }  main.min.js:12429:9
Loading extension: jupyter-js-widgets/extension  main.min.js:12406:21
Session: kernel_created (273a6475-bf01-4383-a022-7ff5043a83f0)  main.min.js:24777:13
Starting WebSockets: ws://localhost:8888/api/kernels/c2a64034-c279-4ff6-829a-d852f9bd808a  main.min.js:23933:9
loaded widgets  extension.js:148:14
Loading extension: geonotebook/index  main.min.js:12406:21
accessing "actions" on the global IPython/Jupyter is not recommended. Pass it to your objects contructors at creation time main.min.js:36572:11
loaded geonotebook  index.js:70:8
Kernel: kernel_connected (c2a64034-c279-4ff6-829a-d852f9bd808a)  main.min.js:23577:13
Could not cross validate the widget frontend and backend versions. Error: Timeout while trying to cross validate the widget frontend and backend versions.
Stack trace:
ManagerBase</ManagerBase.prototype.validateVersion/</</<@http://localhost:8888/nbextensions/jupyter-js-widgets/extension.js?v=20170821110032:14538:29
  extension.js:272:14
Could not cross validate the widget frontend and backend versions. Error: Timeout while trying to cross validate the widget frontend and backend versions.
Stack trace:
ManagerBase</ManagerBase.prototype.validateVersion/</</<@http://localhost:8888/nbextensions/jupyter-js-widgets/extension.js?v=20170821110032:14538:29
  extension.js:272:14
Kernel: kernel_starting (c2a64034-c279-4ff6-829a-d852f9bd808a)  main.min.js:23577:13
Kernel: kernel_ready (c2a64034-c279-4ff6-829a-d852f9bd808a) main.min.js:23577:13
Widget backend and frontend versions are compatible

There are two Error messages, hope they help.

danlamanna commented 6 years ago

I'm unable to reproduce this using the identical docker image. The only difference I can see is I don't have the following lines in my browser console:

Could not cross validate the widget frontend and backend versions. Error: Timeout while trying to cross validate the widget frontend and backend versions.
Stack trace:
ManagerBase</ManagerBase.prototype.validateVersion/</</<@http://localhost:8888/nbextensions/jupyter-js-widgets/extension.js?v=20170821110032:14538:29
  extension.js:272:14
Could not cross validate the widget frontend and backend versions. Error: Timeout while trying to cross validate the widget frontend and backend versions.
Stack trace:
ManagerBase</ManagerBase.prototype.validateVersion/</</<@http://localhost:8888/nbextensions/jupyter-js-widgets/extension.js?v=20170821110032:14538:29
  extension.js:272:14

Not sure if this is a red herring or what, maybe @kotfic can chime in.

kotfic commented 6 years ago

I haven't seen these errors before but i'm not convinced they're related. What browser/version are you using @nuest?

nuest commented 6 years ago

Version information: Mozilla Firefox 55.0.2, Ubuntu Linux 16.04.1 (4.10.0-32-generic)

I've tested with Chrome (Version 60.0.3112.101 (Official Build) (64-bit)) and Chromium (Chromium 60.0.3112.78 Built on Ubuntu), too, and the map shows in both of them.

So, this can be closed from my side, I'd be happy to test things you might chance to support Firefox 55.0.2 (once someone else has replicated this problem with Firefox).

kotfic commented 6 years ago

@nuest Strange, locally I am seeing the map in firefox, both 54.0.1 (64-bit) and 55.0.2 (64-bit) (both archlinux builds). I would like to check this out on an ubuntu 16.04 VM but it will have to wait until next week. I will see if i can reproduce this then.

kotfic commented 6 years ago

I wasn't able to reproduce this issue with a clean pull of the docker image on a Ubuntu Linux 16.04.1 virtual machine using firefox 55.0.2. I am going to close this, unless @nuest has anything else to add (in which case please feel free to re-open). Thanks so much for taking the time to submit an issue. I'm sorry we couldn't track down the specific problem.