Docker images for GIS processing with Python.
All containers here extend the one provided by OSGeo with GDAL installed, osgeo/gdal.
Images built from dockerfiles here defined are available
in the DockerHub under chbrandt/gispy
Especifically, the following tags are associated to dockerfiles in here:
-
chbrandt/gispy:gdal-3.2.0chbrandt/gispy:gdalchbrandt/gispy:latest
-
chbrandt/gispy:jupyterhub
Inside the dockerfiles/ directory you'll find a set of dockerfiles providing GDAL + Python-3 geo-processing/data-analysis tools/libraries.
For instance, two Docker image/files are provided:
-
- add the following Python-3 libraries and dependencies
- ipython + pip
- fiona
- geopandas
- shapely
- scipy/numpy/matplotlib/etc
- add the following Python-3 libraries and dependencies
-
- inherit FROM gispy:gdal
- add JupyterHub
- default username:
user, password123456
- default username:
The simplest container to run here goes:
% docker run -it --rm chbrandt/gispy:gdal, and you should land in the container shell (-it).
Exit (ctrl-d) and the container will be remove too (--rm)
To have some (geo) data in there, you can mount a volume (-v),
% docker run -it --rm --name gispy \
-v $PWD:/mnt/data \
chbrandt/gispy:gdal, where current working directory ($PWD) is being mapped to container's /mnt/data.
In the following examples, localhost' port 8000 is being used to run the container
running Jupyter ("gdal_jupyter").
To run the image using the default user user:123456,
% docker run -it --rm --name jupyterhub \
-p 8000:8000 -v $PWD:/mnt/data \
chbrandt/gispy:jupyterhubTo run the image using GitHub authentication,
% docker run -it --rm --name gispy_jupyterhub \
-p 8000:8000 -v $PWD:/mnt/data \
-e GITHUB_CLIENT_ID=<your-github-client-id> \
-e GITHUB_CLIENT_SECRET=<your-github-client-secret> \
chbrandt/gispy:jupyterhub