Jupyter Notebooks are documents which can contain live (Python) code, equations, visualizations and narrative text and can be used as an intuitive interface for OGS projects. The following video gives an introduction to using OpenGeoSys with Jupyter Notebooks:
You can use a pre-defined container environment.
registry.opengeosys.org/ogs/ogs/ogs-petsc-jupyter additionally contains:
docker run --rm -p 8888:8888 -v $PWD:/home/jovyan/work --user `id -u $USER` \ --group-add users registry.opengeosys.org/ogs/ogs/ogs-serial-jupyter
This mounts your current directory into
~/work inside the container. Use image
registry.opengeosys.org/ogs/ogs/ogs-petsc-jupyter for PETSc-support!
The above command only works when you run Docker from within a WSL2 Linux shell!
If your current working contains spaces write out
... -v /c/Users/My\ Name/working/directory:/home/jovyan/work ...
singularity run docker://registry.opengeosys.org/ogs/ogs/ogs-serial-jupyter
Open the specified URL shown in the command output in your browser, e.g.
You may have to modify the IP address if this is running on a remote machine.
You can append a version number to the image name (applies both to Docker and Singularity) to get an image for a specific OGS release (starting with 6.4.1):
singularity run docker://registry.opengeosys.org/ogs/ogs/ogs-serial-jupyter:6.4.1
Available images are listed on GitLab.
In the file browser on the left-hand side of the Jupyter Lab interface there is a GitLab-tab which allows for browsing and opening notebooks from the
ogs/ogs-repository. You can directly modify and execute a notebook, but the notebook is not saved back to GitLab. You can change the browsed repository by typing into the top text field.
If you would like to us this with private repositories you have to supply an access token at container start-up:
docker run --rm -p 8888:8888 -v $PWD:/home/jovyan/work --user `id -u $USER` \ --group-add users registry.opengeosys.org/ogs/ogs/ogs-serial-jupyter \ --GitLabConfig.access_token="< YOUR_ACCESS_TOKEN >"
In a running container you can install additional Python packages with the Jupyter magic command
%pip install [package name]
Please note that this is a temporary installation. If you stop the container the environment is destroyed.
The backend can be set via:
import pyvista as pv pv.set_jupyter_backend('ipyvtklink') # default pv.set_jupyter_backend('pythreejs') # see https://docs.pyvista.org/user-guide/jupyter/pythreejs.html pv.set_jupyter_backend('static') # static images