usatlas / analysisbase-dask

Docker image with ATLAS AnalysisBase 24.2.X, dask, and Scikit-HEP tools
https://hub.docker.com/r/sslhep/analysis-dask-base/tags
MIT License
1 stars 0 forks source link

analysisbase-dask

Docker image with ATLAS AnalysisBase 24.2.X, Dask, and Scikit-HEP tools.

Run

UChicago Analysis Facility

A version of this image is available for use at the US ATLAS Analysis Facility at UChicago through the JupyterHub service. When configuring the Jupyter Lab instance for your session select the image from the "Image" drop-down menu.

Locally

docker pull sslhep/analysis-dask-base:latest
docker run --rm -ti --publish 8888:8888 --volume $PWD:/analysis sslhep/analysis-dask-base:latest

(as using Jupytext right click .py files to open as a Jupyter notebook)

Without using the JupyterLab environment

docker run --rm -ti --publish 8888:8888 --volume $PWD:/analysis sslhep/analysis-dask-base:latest /bin/bash

AnalysisBase images

Lists of all AnalysisBase releases that could be used as base images are provided on the ATLAS Twikis:

More easily though, you can just use crane to get a listing of all images from the command line

crane ls gitlab-registry.cern.ch/atlas/athena/analysisbase

Updating image dependencies

All the Python dependencies installed into the default Python virtual environment in the container image are installed from a lock file. To update the dependencies and the lock file:

  1. Make a new branch.
  2. Figure out what the version of the dependency you want to install is with
python -m pip index versions <dependency name>
  1. Add this dependency and version to the docker/requirements.txt with the version pinned.

Example:

dask-labextension==7.0.0
  1. Rebuild the lock file with make lock (this also verifies that the environment can be installed).
  2. Add and commit the updated docker/requirements.txt and docker/requirements.lock.
  3. Open a PR with the changes and wait for the CI to verify the build passes.