Install with Containers
If you need to run simulations on a computing cluster, or the built-in installer doesn't work for you, pre-built Docker and Apptainer images with all dependencies are available on the GitHub Container Registry.
If you're on a personal machine, go with Docker; if you're on a cluster, Apptainer is usually the better fit (and is often already installed).
Note
The provided images are built for x86_64 and are not compatible with ARM-based architectures (e.g., Apple M-series Macs). If your macOS machine is Apple Silicon-based, use the built-in installer instead.
Available Images
| Tag | Description |
|---|---|
:latest |
CPU-only image |
:latest-gpu |
GPU-enabled image |
:VERSION |
Specific release |
Using Docker
If you need help getting started with Docker, see the Docker documentation.
Here is an outline of the steps to set things up:
-
Pull the image
sh docker pull ghcr.io/harvard-neutrino/prometheus:latest -
Run the container and launch a shell
sh docker run --rm -it ghcr.io/harvard-neutrino/prometheus:latest -
Run an example
sh docker run --rm -v "$PWD/output:/output" ghcr.io/harvard-neutrino/prometheus:latest python /opt/prometheus/examples/01_basic_water.pyThe
-v "$PWD/output:/output"part of the command enables volume mounting to access output files on your local machine.
For more container running options, refer to the Docker containers documentation.
GPU Support
For GPU-accelerated simulations, you will need the NVIDIA Container Toolkit. Once installed, use the GPU image:
docker run --rm -it --gpus all ghcr.io/harvard-neutrino/prometheus:latest-gpu
If this fails, check that your NVIDIA drivers and container toolkit are correctly installed.
Using Apptainer / Singularity
Apptainer (formerly Singularity) is particularly useful for running simulations on computing clusters, where it is often pre-installed. If you need help getting started, see the Apptainer documentation.
-
Load the Apptainer module (if on a cluster)
sh module load apptainer -
Pull the container image
sh apptainer pull docker://ghcr.io/harvard-neutrino/prometheus:latest -
Run an example
sh apptainer exec prometheus_latest.sif python /opt/prometheus/examples/01_basic_water.py