Sign inSign up

opengeohub/geocomp-ide

By opengeohub

Updated 20 days ago

A multi-language geocomputation IDE: Python, R, Julia, JS, Rust kernels on GDAL, with Quarto.

Image
Data science
0

197

opengeohub/geocomp-ide repository overview

OpenGeoHub

opengeohub/geocomp-ide

A multi-language geocomputation IDE: a single Docker image bundling a JupyterHub-ready JupyterLab with kernels for Python, R, Julia, JavaScript and Rust, all backed by a shared GDAL/PROJ/GEOS stack, plus Quarto (knitr engine) for reproducible publishing with cross-language variable sharing.

What is it?

One image, five languages, one geospatial foundation. Each language ships its own Jupyter kernel and GDAL-compatible raster/vector libraries, so you can read, analyse and publish raster and vector data in whichever language fits the task — and a Quarto document can pass objects between them from R chunks via reticulate (R ↔ Python) and JuliaCall (R ↔ Julia).

What's inside

Base — Ubuntu 24.04 with GDAL 3.11.4, GEOS and PROJ (ubuntugis-unstable).

Kernels & geospatial stacks

LanguageKernelRaster / vector libraries
Python 3.12IPythonscikit-map[full], rasterio
R 4.4IRkernelsf, terra, raster, stars
Julia 1.11IJuliaArchGDAL, GeoDataFrames, Rasters
JavaScript (Node 22)ijavascriptgdal-async, geotiff, shpjs
Rust (stable)evcxrgdal, geozero, shapefile (crates)

Publishing — Quarto CLI 1.10.18 (bundles its own pandoc) with the knitr engine: knitr + rmarkdown, reticulate and JuliaCall. RETICULATE_PYTHON points at the Python venv, so R chunks reach the full scikit-map stack.

JupyterLab — ipywidgets, geemap, ipyleaflet, ipympl, jupyter_bokeh, spell-checker and the jupyterlab-quarto extension (preview/render .qmd).

Usage

All the available options of jupyter/datascience-notebook works in this image

  1. Download the appropiate BLAS/LAPACK implementation for you chipset (image tags):
docker pull opengeohub/geocomp-ide:v3.12.3-gdal3114
  1. Create the container
docker run -d --restart=always --name geocomp_ide_312 \
  -v /home:/home/host -p 8888:8888 --tmpfs /tmp:mode=1777 \
  opengeohub/geocomp-ide:v3.12.3-gdal3114 jupyter lab \
  --allow-root --LabApp.token='opengeohub' --ServerApp.root_dir='/' --no-browser --ip=0.0.0.0
  1. Access the JupyterLab through http://localhost:8888 using the credentials:
  • Password or token: opengeohub

Tag summary

Content type

Image

Digest

sha256:2b15986b1

Size

4.6 GB

Last updated

20 days ago

docker pull opengeohub/geocomp-ide:v3.12.3-gdal3114