Skip to content

martinclaus/py-da-stack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

py-da-stack

build and push Binder badget

Python Data Analysis stack in a Docker container

How this works

This image is based on the latest jupyter/base-notebook image. These images are maintained by the Project Jupyter at the docker-stacks GitHub repository and ensure a recent Jupyter environment that can run Jupyter Lab or Notebook server or behind a JupyterHub.

The additional packages that are installed via conda from the conda-forge channel are specified in the file requirements.txt.

Every Sunday, 5:45 UTC, the image will be rebuild so that the package versions are kept up-to-date. To pin an envronment, you may tag the image you use for the analysis (see below).

How to use

Use the pre-built Docker images with Docker

You can use docker images that come with a fully working Jupyter environment and run them with docker.

Assuming you want to expose your work directory to /work in the container, then run:

docker pull martinclaus/py-da-stack:latest
docker run \
    -v ${HOME}/work/:/work -w /work \
    -p 8888:8888 \
    --user $(id -u):$(id -g) --group-add users \
    martinclaus/py-da-stack:latest

If you want to run a specific version of this image, replace the tag latest accordingly. All available versions are found on Dockerhub.

Use the pre-built Docker images with Singularity

To run from your /work dir with Singularity:

cd /work
singularity run \
    -B $(mktemp -d):/run/user \
    docker://martinclaus/py-da-stack:latest

If you want to run a specific version of this image, replace the tag latest accordingly. All available versions are found on Dockerhub.

Run on mybinder.org

To run the latest version of the image on mybinder.org use the following URL

https://mybinder.org/v2/gh/martinclaus/py-da-stack/master

To use this image in your own repo, copy the binder/ folder to your repo and change the binder URL accordingly.

Make you analysis reproducible

To obtain a reproducible analysis, it is necessary to freeze your software environment. This can be achieved by tagging the image you want to use for the analysis.

docker tag martinclaus/py-da-stack:latest <my_docker_namespace>/py-da-stack:<analysis_id>

You can then push the image to your own docker namespace <my_docker_namespace>.

docker push <my_docker_namespace>/py-da-stack:<analysis_id>

Note that you need to register at DockerHub to get you own namespace. You can also choose a a different repository name than py-da-stack.

About

Python Data Analysis stack in Docker container

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors