Awesome
ijava-binder
A Binder compatible repository to try out the IJava kernel with just a web browser. Depending on if the docker image is already built, spawning the notebook may take some time and so please be patient with it.
In the future this repository may be populated with more example notebooks but it mainly serves to meet the requirements for using the Binder service to play around with the IJava kernel.
Running locally
Build and start a container with port 8888 exposed from the container.
docker build -t ijava:1.3.0-snapshot .
docker run --rm -it -p 8888:8888 -t ijava:1.3.0-snapshot
# or to work with files from the host
docker run --rm -it -p 8888:8888 -v "$(pwd):/home/jovyan/work" -t ijava:1.3.0-snapshot
The jupyter server should automatically start in the container and print something like:
To access the server, open this file in a browser:
file:///home/jovyan/.local/share/jupyter/runtime/jpserver-1-open.html
Or copy and paste one of these URLs:
http://710876c77a01:8888/tree?token=<token>
http://127.0.0.1:8888/tree?token=<token>
Open the link http://127.0.0.1:8888/tree?token=<token>
in your browser on the host machine to connect. Optionally use /lab
or /doc
instead of /tree
to go to the jupyterlab home page instead.
repo2docker
Test the binder build locally:
python3 -m pip install jupyter-repo2docker
python3 -m repo2docker .
Other binders running the IJava kernel
Notebook Source Repository | Try online |
---|---|
https://github.com/michaelmior/calcite-notebooks | |
https://github.com/inspire99/vavr-notebook | |
https://github.com/padreati/rapaio-notebooks |
Notebook authors
If you are writing Jupyter notebooks in Java and publishing them on GitHub you are more than welcome (and encouraged!) to take any scripts from here and add them to your repository so that visitors may try out your notebooks without any installation.
Likely all that is needed is the Dockerfile
at the top level of your repo and the requirements.txt
to use the same versions for jupyter packages. Then add some badges from https://mybinder.readthedocs.io/en/latest/howto/badges.html to your README
and everything should be good to go! If you have a repository with IJava notebooks, please feel free to open a PR (or raise an issue) adding a link in the list above.
The requirements.txt
is generated from a working installation with pipdeptree -f --warn silence -p notebook,jupyterlab | sed 's/^\s*//' | sort | uniq
which should pin down all related library versions.