{
  "catalog": "https://containers.projecteureka.ai",
  "vault_prefix": "/vault/containers",
  "note": "kind is interactive (Launch) or flow. appVersion is the software; version is the SIF packaging. Verify sha256 after copy onto vault. filePath is POSIX, not the HTTPS URL. category/tags are catalog search. minCores/minMemory/minGpus/arch are launcher floors.",
  "apps": [
    {
      "name": "codeserver",
      "version": "4.96.4",
      "kind": "interactive",
      "session": "http",
      "category": "ide",
      "tags": [
        "ide",
        "editor",
        "http"
      ],
      "arch": "x86_64",
      "minCores": 2,
      "minMemory": 4,
      "minGpus": 0,
      "appVersion": "4.96.4",
      "display_name": "VS Code",
      "filePath": "/vault/containers/codeserver/4.96.4/image.sif",
      "connectUrl": "rnode:/login",
      "container_args": "code-server --bind-addr 0.0.0.0:$PORT --auth password --disable-telemetry",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "597e47a0d3bacf73dc8d0fbb6f1898360be1046f77f3c7fe1e958c6df60b8188",
      "sha256Url": "https://containers.projecteureka.ai/codeserver/4.96.4/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/codeserver/4.96.4/image.sif",
      "programUrl": "https://containers.projecteureka.ai/codeserver/4.96.4/container-program.json"
    },
    {
      "name": "ffmpeg",
      "version": "2026.09",
      "kind": "flow",
      "session": "flow",
      "category": "visualization",
      "tags": [
        "ffmpeg",
        "video",
        "cli",
        "flow"
      ],
      "arch": "x86_64",
      "minCores": 2,
      "minMemory": 4,
      "minGpus": 0,
      "appVersion": "5.1.9",
      "display_name": "FFmpeg",
      "filePath": "/vault/containers/ffmpeg/2026.09/image.sif",
      "connectUrl": "",
      "container_args": "",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "a94d096bec505adababa3493054e5b63794341a802e002b96ad327055b9a67f6",
      "sha256Url": "https://containers.projecteureka.ai/ffmpeg/2026.09/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/ffmpeg/2026.09/image.sif",
      "programUrl": "https://containers.projecteureka.ai/ffmpeg/2026.09/container-program.json"
    },
    {
      "name": "gdal",
      "version": "2026.09",
      "kind": "flow",
      "session": "flow",
      "category": "gis",
      "tags": [
        "gdal",
        "gis",
        "cli",
        "flow",
        "geotiff"
      ],
      "arch": "x86_64",
      "minCores": 1,
      "minMemory": 2,
      "minGpus": 0,
      "appVersion": "3.6.2",
      "display_name": "GDAL",
      "filePath": "/vault/containers/gdal/2026.09/image.sif",
      "connectUrl": "",
      "container_args": "",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "447e47faebda86986f6f46c1df70d2f5d61cbd0543c78a83815f3ee456625922",
      "sha256Url": "https://containers.projecteureka.ai/gdal/2026.09/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/gdal/2026.09/image.sif",
      "programUrl": "https://containers.projecteureka.ai/gdal/2026.09/container-program.json"
    },
    {
      "name": "gromacs",
      "version": "2026.09",
      "kind": "flow",
      "session": "flow",
      "category": "hpc",
      "tags": [
        "gromacs",
        "md",
        "hpc",
        "cli",
        "flow"
      ],
      "arch": "x86_64",
      "minCores": 4,
      "minMemory": 8,
      "minGpus": 0,
      "appVersion": "2022.5",
      "display_name": "GROMACS",
      "filePath": "/vault/containers/gromacs/2026.09/image.sif",
      "connectUrl": "",
      "container_args": "",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "97461966bd8b2f4b93ea05aabf28375fdd416d099474c6cb3142eb77ade3eced",
      "sha256Url": "https://containers.projecteureka.ai/gromacs/2026.09/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/gromacs/2026.09/image.sif",
      "programUrl": "https://containers.projecteureka.ai/gromacs/2026.09/container-program.json"
    },
    {
      "name": "gromacs-gpu",
      "version": "2026.09",
      "kind": "flow",
      "session": "flow",
      "category": "hpc",
      "tags": [
        "gromacs",
        "md",
        "hpc",
        "cli",
        "flow",
        "gpu",
        "cuda",
        "mpi"
      ],
      "arch": "x86_64",
      "minCores": 4,
      "minMemory": 16,
      "minGpus": 1,
      "appVersion": "2024.3 CUDA 12.4",
      "display_name": "GROMACS GPU",
      "filePath": "/vault/containers/gromacs-gpu/2026.09/image.sif",
      "connectUrl": "",
      "container_args": "",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "f7bff0c2e4ce0cb34bade4543acaed87026bc2352996a1f15a2f12796df676a6",
      "sha256Url": "https://containers.projecteureka.ai/gromacs-gpu/2026.09/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/gromacs-gpu/2026.09/image.sif",
      "programUrl": "https://containers.projecteureka.ai/gromacs-gpu/2026.09/container-program.json"
    },
    {
      "name": "jupyter",
      "version": "2026.08",
      "kind": "interactive",
      "session": "http",
      "category": "notebook",
      "tags": [
        "notebook",
        "python",
        "jupyter"
      ],
      "arch": "x86_64",
      "minCores": 2,
      "minMemory": 8,
      "minGpus": 0,
      "appVersion": "scipy-notebook",
      "display_name": "JupyterLab",
      "filePath": "/vault/containers/jupyter/2026.08/image.sif",
      "connectUrl": "/login",
      "container_args": "jupyter lab --core-mode --config=$CONFIG_FILE",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "7d97b6b7bd03f1248f6c0fbd6e8723d56045551c4d022d7fc4065bb41342a615",
      "sha256Url": "https://containers.projecteureka.ai/jupyter/2026.08/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/jupyter/2026.08/image.sif",
      "programUrl": "https://containers.projecteureka.ai/jupyter/2026.08/container-program.json"
    },
    {
      "name": "jupyter-datascience",
      "version": "2026.08",
      "kind": "interactive",
      "session": "http",
      "category": "notebook",
      "tags": [
        "notebook",
        "python",
        "r",
        "julia",
        "jupyter",
        "datascience"
      ],
      "arch": "x86_64",
      "minCores": 2,
      "minMemory": 8,
      "minGpus": 0,
      "appVersion": "datascience-notebook",
      "display_name": "Jupyter Data Science",
      "filePath": "/vault/containers/jupyter-datascience/2026.08/image.sif",
      "connectUrl": "/login",
      "container_args": "jupyter lab --core-mode --config=$CONFIG_FILE",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "3e9f8b342cb4d270054be7cd687db4cb33b9b3b59613454431d7ecdebfce6bda",
      "sha256Url": "https://containers.projecteureka.ai/jupyter-datascience/2026.08/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/jupyter-datascience/2026.08/image.sif",
      "programUrl": "https://containers.projecteureka.ai/jupyter-datascience/2026.08/container-program.json"
    },
    {
      "name": "jupyter-pytorch",
      "version": "2026.08",
      "kind": "interactive",
      "session": "http",
      "category": "machine-learning",
      "tags": [
        "notebook",
        "python",
        "jupyter",
        "pytorch",
        "cuda",
        "gpu",
        "ml"
      ],
      "arch": "x86_64",
      "minCores": 4,
      "minMemory": 16,
      "minGpus": 0,
      "appVersion": "pytorch-notebook CUDA 12",
      "display_name": "Jupyter PyTorch",
      "filePath": "/vault/containers/jupyter-pytorch/2026.08/image.sif",
      "connectUrl": "/login",
      "container_args": "jupyter lab --core-mode --config=$CONFIG_FILE",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "7a5c80bba29a6b9aa7a10a3b753e02346950cb7694a2f9a7bf70b05cbfc9a0c7",
      "sha256Url": "https://containers.projecteureka.ai/jupyter-pytorch/2026.08/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/jupyter-pytorch/2026.08/image.sif",
      "programUrl": "https://containers.projecteureka.ai/jupyter-pytorch/2026.08/container-program.json"
    },
    {
      "name": "jupyter-tensorflow",
      "version": "2026.08",
      "kind": "interactive",
      "session": "http",
      "category": "machine-learning",
      "tags": [
        "notebook",
        "python",
        "jupyter",
        "tensorflow",
        "cuda",
        "gpu",
        "ml"
      ],
      "arch": "x86_64",
      "minCores": 4,
      "minMemory": 16,
      "minGpus": 0,
      "appVersion": "tensorflow-notebook CUDA",
      "display_name": "Jupyter TensorFlow",
      "filePath": "/vault/containers/jupyter-tensorflow/2026.08/image.sif",
      "connectUrl": "/login",
      "container_args": "jupyter lab --core-mode --config=$CONFIG_FILE",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "97bea7615808c830ca057d4917af03fb22a9c049ddd2a74964265e353af2a346",
      "sha256Url": "https://containers.projecteureka.ai/jupyter-tensorflow/2026.08/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/jupyter-tensorflow/2026.08/image.sif",
      "programUrl": "https://containers.projecteureka.ai/jupyter-tensorflow/2026.08/container-program.json"
    },
    {
      "name": "lammps",
      "version": "2026.09",
      "kind": "flow",
      "session": "flow",
      "category": "hpc",
      "tags": [
        "lammps",
        "md",
        "hpc",
        "cli",
        "flow"
      ],
      "arch": "x86_64",
      "minCores": 2,
      "minMemory": 4,
      "minGpus": 0,
      "appVersion": "2022.01.06",
      "display_name": "LAMMPS",
      "filePath": "/vault/containers/lammps/2026.09/image.sif",
      "connectUrl": "",
      "container_args": "",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "9e7cd81a6bf502259412e56813494415ec60dd2b08a8850ebfbf4f520a46f128",
      "sha256Url": "https://containers.projecteureka.ai/lammps/2026.09/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/lammps/2026.09/image.sif",
      "programUrl": "https://containers.projecteureka.ai/lammps/2026.09/container-program.json"
    },
    {
      "name": "matlab-ubuntu",
      "version": "r2026a",
      "kind": "interactive",
      "session": "gui",
      "category": "",
      "tags": [],
      "arch": "x86_64",
      "minCores": 2,
      "minMemory": 4,
      "minGpus": 0,
      "appVersion": "",
      "display_name": "Matlab-Ubuntu",
      "filePath": "/vault/containers/matlab-ubuntu/r2026a/image.sif",
      "connectUrl": "rnode:/",
      "container_args": "start-desktop.sh",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "3288576452384011f616a80ffde8c261abaf832c5046907813c9815c7683c78a",
      "sha256Url": "https://containers.projecteureka.ai/matlab-ubuntu/r2026a/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/matlab-ubuntu/r2026a/image.sif",
      "programUrl": "https://containers.projecteureka.ai/matlab-ubuntu/r2026a/container-program.json"
    },
    {
      "name": "ncbi-blast",
      "version": "2026.09",
      "kind": "flow",
      "session": "flow",
      "category": "bioinformatics",
      "tags": [
        "blast",
        "genomics",
        "cli",
        "flow"
      ],
      "arch": "x86_64",
      "minCores": 1,
      "minMemory": 4,
      "minGpus": 0,
      "appVersion": "2.12.0+",
      "display_name": "NCBI BLAST+",
      "filePath": "/vault/containers/ncbi-blast/2026.09/image.sif",
      "connectUrl": "",
      "container_args": "",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "a9b2c43bad321f7f68e52041255c9b6da9070921c8c146bf6a1c6ddddfd76db2",
      "sha256Url": "https://containers.projecteureka.ai/ncbi-blast/2026.09/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/ncbi-blast/2026.09/image.sif",
      "programUrl": "https://containers.projecteureka.ai/ncbi-blast/2026.09/container-program.json"
    },
    {
      "name": "ngs-tools",
      "version": "2026.09",
      "kind": "flow",
      "session": "flow",
      "category": "bioinformatics",
      "tags": [
        "ngs",
        "samtools",
        "bwa",
        "fastqc",
        "genomics",
        "cli",
        "flow"
      ],
      "arch": "x86_64",
      "minCores": 2,
      "minMemory": 8,
      "minGpus": 0,
      "appVersion": "samtools 1.16.1, bwa 0.7.17, fastqc 0.11.9",
      "display_name": "NGS tools",
      "filePath": "/vault/containers/ngs-tools/2026.09/image.sif",
      "connectUrl": "",
      "container_args": "",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "c836bf33daa512e9c058ff740d0b2930413174183432cb7ef229f6aa3b4a3d68",
      "sha256Url": "https://containers.projecteureka.ai/ngs-tools/2026.09/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/ngs-tools/2026.09/image.sif",
      "programUrl": "https://containers.projecteureka.ai/ngs-tools/2026.09/container-program.json"
    },
    {
      "name": "octave",
      "version": "2026.08",
      "kind": "interactive",
      "session": "gui",
      "category": "statistics",
      "tags": [
        "matlab-like",
        "desktop",
        "gui"
      ],
      "arch": "x86_64",
      "minCores": 2,
      "minMemory": 4,
      "minGpus": 0,
      "appVersion": "GNU Octave",
      "display_name": "Octave",
      "filePath": "/vault/containers/octave/2026.08/image.sif",
      "connectUrl": "",
      "container_args": "octave --gui",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "9199576dd1421d25e44b9402d99bb3d01a4d53e2b8801c1e006d9b77cd074ed8",
      "sha256Url": "https://containers.projecteureka.ai/octave/2026.08/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/octave/2026.08/image.sif",
      "programUrl": "https://containers.projecteureka.ai/octave/2026.08/container-program.json"
    },
    {
      "name": "ollama",
      "version": "2026.08",
      "kind": "interactive",
      "session": "http",
      "category": "llm",
      "tags": [
        "llm",
        "api",
        "gpu",
        "http"
      ],
      "arch": "x86_64",
      "minCores": 4,
      "minMemory": 16,
      "minGpus": 0,
      "appVersion": "ollama",
      "display_name": "Ollama",
      "filePath": "/vault/containers/ollama/2026.08/image.sif",
      "connectUrl": "rnode:/",
      "container_args": "/opt/start-ollama.sh",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "a6f212b3cc504b8a9ce03219dac6060f9e353c5f1c63e3ed4eb9d2a865808f5e",
      "sha256Url": "https://containers.projecteureka.ai/ollama/2026.08/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/ollama/2026.08/image.sif",
      "programUrl": "https://containers.projecteureka.ai/ollama/2026.08/container-program.json"
    },
    {
      "name": "open-webui",
      "version": "2026.08",
      "kind": "interactive",
      "session": "http",
      "category": "llm",
      "tags": [
        "llm",
        "chat",
        "web",
        "http"
      ],
      "arch": "x86_64",
      "minCores": 2,
      "minMemory": 4,
      "minGpus": 0,
      "appVersion": "open-webui",
      "display_name": "Open WebUI",
      "filePath": "/vault/containers/open-webui/2026.08/image.sif",
      "connectUrl": "rnode:/",
      "container_args": "python3 -m uvicorn --app-dir /app/backend open_webui.main:app --host 0.0.0.0 --port=$PORT --forwarded-allow-ips=*",
      "binds": [],
      "env": [
        "DATA_DIR=$SCRATCH/open-webui",
        "EUREKA_ASSET_PREFIX=$BASE_URL",
        "WEBUI_AUTH=False"
      ],
      "config": {},
      "sha256": "d5f800c5e05c9460a4fbf55063df4da82a191c8a3580c1a586284451056988a4",
      "sha256Url": "https://containers.projecteureka.ai/open-webui/2026.08/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/open-webui/2026.08/image.sif",
      "programUrl": "https://containers.projecteureka.ai/open-webui/2026.08/container-program.json"
    },
    {
      "name": "openfoam",
      "version": "2026.09",
      "kind": "flow",
      "session": "flow",
      "category": "hpc",
      "tags": [
        "openfoam",
        "cfd",
        "hpc",
        "cli",
        "flow"
      ],
      "arch": "x86_64",
      "minCores": 4,
      "minMemory": 8,
      "minGpus": 0,
      "appVersion": "v2512",
      "display_name": "OpenFOAM",
      "filePath": "/vault/containers/openfoam/2026.09/image.sif",
      "connectUrl": "",
      "container_args": "",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "7ab51b7425ab40787ae39eab23487f74bbabf1405e8921c64949683c9a0a297d",
      "sha256Url": "https://containers.projecteureka.ai/openfoam/2026.09/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/openfoam/2026.09/image.sif",
      "programUrl": "https://containers.projecteureka.ai/openfoam/2026.09/container-program.json"
    },
    {
      "name": "paraview",
      "version": "2026.08",
      "kind": "interactive",
      "session": "gui",
      "category": "visualization",
      "tags": [
        "viz",
        "hpc",
        "desktop",
        "gui",
        "gpu"
      ],
      "arch": "x86_64",
      "minCores": 4,
      "minMemory": 16,
      "minGpus": 0,
      "appVersion": "ParaView GUI",
      "display_name": "ParaView",
      "filePath": "/vault/containers/paraview/2026.08/image.sif",
      "connectUrl": "",
      "container_args": "paraview",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "61cd251a46a02965f6a018510f6071dcf46efb48dc31ef920d83ac28fbfdd2fb",
      "sha256Url": "https://containers.projecteureka.ai/paraview/2026.08/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/paraview/2026.08/image.sif",
      "programUrl": "https://containers.projecteureka.ai/paraview/2026.08/container-program.json"
    },
    {
      "name": "paraview-batch",
      "version": "2026.09",
      "kind": "flow",
      "session": "flow",
      "category": "visualization",
      "tags": [
        "paraview",
        "pvbatch",
        "pvpython",
        "viz",
        "hpc",
        "cli",
        "flow",
        "osmesa"
      ],
      "arch": "x86_64",
      "minCores": 4,
      "minMemory": 16,
      "minGpus": 0,
      "appVersion": "5.13.3",
      "display_name": "ParaView Batch",
      "filePath": "/vault/containers/paraview-batch/2026.09/image.sif",
      "connectUrl": "",
      "container_args": "",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "a51878de2842a48ac7dcc30d27a37b300cecb7aa38ddb59459b718f99c6a0e95",
      "sha256Url": "https://containers.projecteureka.ai/paraview-batch/2026.09/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/paraview-batch/2026.09/image.sif",
      "programUrl": "https://containers.projecteureka.ai/paraview-batch/2026.09/container-program.json"
    },
    {
      "name": "pluto",
      "version": "2026.08",
      "kind": "interactive",
      "session": "http",
      "category": "notebook",
      "tags": [
        "notebook",
        "julia",
        "http"
      ],
      "arch": "x86_64",
      "minCores": 2,
      "minMemory": 8,
      "minGpus": 0,
      "appVersion": "Pluto.jl",
      "display_name": "Pluto.jl",
      "filePath": "/vault/containers/pluto/2026.08/image.sif",
      "connectUrl": "rnode:/",
      "container_args": "/opt/start-pluto.sh",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "d367fcdecc0f8106c18e0192d347564bb63d8a068971a1622899b99604caee07",
      "sha256Url": "https://containers.projecteureka.ai/pluto/2026.08/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/pluto/2026.08/image.sif",
      "programUrl": "https://containers.projecteureka.ai/pluto/2026.08/container-program.json"
    },
    {
      "name": "pytorch",
      "version": "2026.09",
      "kind": "flow",
      "session": "flow",
      "category": "machine-learning",
      "tags": [
        "pytorch",
        "ml",
        "cuda",
        "gpu",
        "python",
        "flow"
      ],
      "arch": "x86_64",
      "minCores": 4,
      "minMemory": 16,
      "minGpus": 0,
      "appVersion": "2.5.1+cu124",
      "display_name": "PyTorch",
      "filePath": "/vault/containers/pytorch/2026.09/image.sif",
      "connectUrl": "",
      "container_args": "",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "4e162734dc189e27e5a3fae9a97a74ac6288668bd4d9f777b1460d4edea42375",
      "sha256Url": "https://containers.projecteureka.ai/pytorch/2026.09/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/pytorch/2026.09/image.sif",
      "programUrl": "https://containers.projecteureka.ai/pytorch/2026.09/container-program.json"
    },
    {
      "name": "pytorch-cpu",
      "version": "2026.09",
      "kind": "flow",
      "session": "flow",
      "category": "machine-learning",
      "tags": [
        "pytorch",
        "ml",
        "python",
        "flow",
        "cpu"
      ],
      "arch": "x86_64",
      "minCores": 2,
      "minMemory": 8,
      "minGpus": 0,
      "appVersion": "2.14.0+cpu",
      "display_name": "PyTorch CPU",
      "filePath": "/vault/containers/pytorch-cpu/2026.09/image.sif",
      "connectUrl": "",
      "container_args": "",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "0cdf9ae9a2d3477896e7e9877032ef8beaae64cae24e1966f3bbd51b42765611",
      "sha256Url": "https://containers.projecteureka.ai/pytorch-cpu/2026.09/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/pytorch-cpu/2026.09/image.sif",
      "programUrl": "https://containers.projecteureka.ai/pytorch-cpu/2026.09/container-program.json"
    },
    {
      "name": "qgis",
      "version": "2026.08",
      "kind": "interactive",
      "session": "gui",
      "category": "gis",
      "tags": [
        "gis",
        "desktop",
        "gui"
      ],
      "arch": "x86_64",
      "minCores": 2,
      "minMemory": 8,
      "minGpus": 0,
      "appVersion": "QGIS",
      "display_name": "QGIS",
      "filePath": "/vault/containers/qgis/2026.08/image.sif",
      "connectUrl": "",
      "container_args": "qgis",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "d0a0b1f9f5427842dcbc4b400e4d7aca6af2ef0e5757ac9e076a7b61123a3b1f",
      "sha256Url": "https://containers.projecteureka.ai/qgis/2026.08/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/qgis/2026.08/image.sif",
      "programUrl": "https://containers.projecteureka.ai/qgis/2026.08/container-program.json"
    },
    {
      "name": "quantum-espresso",
      "version": "2026.09",
      "kind": "flow",
      "session": "flow",
      "category": "hpc",
      "tags": [
        "qe",
        "dft",
        "hpc",
        "cli",
        "flow"
      ],
      "arch": "x86_64",
      "minCores": 4,
      "minMemory": 8,
      "minGpus": 0,
      "appVersion": "6.7",
      "display_name": "Quantum ESPRESSO",
      "filePath": "/vault/containers/quantum-espresso/2026.09/image.sif",
      "connectUrl": "",
      "container_args": "",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "2b78f9da6ee9e2156e02fe55cc04c907a1b36b4cc6aa066b0a439998dd74008d",
      "sha256Url": "https://containers.projecteureka.ai/quantum-espresso/2026.09/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/quantum-espresso/2026.09/image.sif",
      "programUrl": "https://containers.projecteureka.ai/quantum-espresso/2026.09/container-program.json"
    },
    {
      "name": "relion",
      "version": "2026.09",
      "kind": "flow",
      "session": "flow",
      "category": "hpc",
      "tags": [
        "relion",
        "cryoem",
        "hpc",
        "cli",
        "flow",
        "gpu",
        "cuda",
        "mpi"
      ],
      "arch": "x86_64",
      "minCores": 8,
      "minMemory": 32,
      "minGpus": 1,
      "appVersion": "5.0",
      "display_name": "RELION",
      "filePath": "/vault/containers/relion/2026.09/image.sif",
      "connectUrl": "",
      "container_args": "",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "",
      "sha256Url": "https://containers.projecteureka.ai/relion/2026.09/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/relion/2026.09/image.sif",
      "programUrl": "https://containers.projecteureka.ai/relion/2026.09/container-program.json"
    },
    {
      "name": "rstudio",
      "version": "2026.08",
      "kind": "interactive",
      "session": "http",
      "category": "statistics",
      "tags": [
        "r",
        "ide",
        "statistics",
        "http"
      ],
      "arch": "x86_64",
      "minCores": 2,
      "minMemory": 8,
      "minGpus": 0,
      "appVersion": "4.5.3",
      "display_name": "RStudio Server",
      "filePath": "/vault/containers/rstudio/2026.08/image.sif",
      "connectUrl": "rnode:/auth-sign-in",
      "container_args": "/usr/lib/rstudio-server/bin/rserver --www-port=$PORT --www-address=0.0.0.0 --server-user=$USER --auth-none=0 --auth-encrypt-password=0 --auth-pam-helper-path=/usr/lib/rstudio-server/bin/pam-helper --server-data-dir=$SCRATCH/data --server-daemonize=0",
      "binds": [
        "$SCRATCH/var/lib/rstudio-server:/var/lib/rstudio-server",
        "$SCRATCH/var/run/rstudio-server:/var/run/rstudio-server",
        "$SCRATCH/var/log/rstudio:/var/log/rstudio"
      ],
      "env": [],
      "config": {},
      "sha256": "412347bdfdf6843a51ad1a370a9d3ff86638371ec94b477cce4d1f6892300a89",
      "sha256Url": "https://containers.projecteureka.ai/rstudio/2026.08/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/rstudio/2026.08/image.sif",
      "programUrl": "https://containers.projecteureka.ai/rstudio/2026.08/container-program.json"
    },
    {
      "name": "sagemath",
      "version": "2026.09",
      "kind": "interactive",
      "session": "http",
      "category": "notebook",
      "tags": [
        "sagemath",
        "python",
        "notebook",
        "math"
      ],
      "arch": "x86_64",
      "minCores": 2,
      "minMemory": 4,
      "minGpus": 0,
      "appVersion": "SageMath",
      "display_name": "SageMath",
      "filePath": "/vault/containers/sagemath/2026.09/image.sif",
      "connectUrl": "/login",
      "container_args": "sage -n jupyter -- --config=$CONFIG_FILE",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "553b83e4c7a24345c1723d42cd7d74d473a529f2235ddfd7f26ec1f65c02049a",
      "sha256Url": "https://containers.projecteureka.ai/sagemath/2026.09/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/sagemath/2026.09/image.sif",
      "programUrl": "https://containers.projecteureka.ai/sagemath/2026.09/container-program.json"
    },
    {
      "name": "shiny",
      "version": "2026.08",
      "kind": "interactive",
      "session": "http",
      "category": "web",
      "tags": [
        "r",
        "web",
        "http"
      ],
      "arch": "x86_64",
      "minCores": 2,
      "minMemory": 4,
      "minGpus": 0,
      "appVersion": "4.5.3",
      "display_name": "Shiny",
      "filePath": "/vault/containers/shiny/2026.08/image.sif",
      "connectUrl": "rnode:/",
      "container_args": "shiny-server",
      "binds": [
        "$SCRATCH/shiny-logs:/var/log/shiny-server",
        "$SCRATCH/shiny-server.conf:/etc/shiny-server/shiny-server.conf"
      ],
      "env": [],
      "config": {},
      "sha256": "214cd498d7eaedefb4237f80497cabc9e06494c7ffd77edf12e9643f252aff99",
      "sha256Url": "https://containers.projecteureka.ai/shiny/2026.08/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/shiny/2026.08/image.sif",
      "programUrl": "https://containers.projecteureka.ai/shiny/2026.08/container-program.json"
    },
    {
      "name": "spyder",
      "version": "2026.08",
      "kind": "interactive",
      "session": "gui",
      "category": "ide",
      "tags": [
        "ide",
        "python",
        "desktop",
        "gui"
      ],
      "arch": "x86_64",
      "minCores": 2,
      "minMemory": 8,
      "minGpus": 0,
      "appVersion": "spyder",
      "display_name": "Spyder",
      "filePath": "/vault/containers/spyder/2026.08/image.sif",
      "connectUrl": "",
      "container_args": "spyder",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "f3ec6e58c48124ecd943eb71215149882b93a6e4f187230ea1984d6052a7504e",
      "sha256Url": "https://containers.projecteureka.ai/spyder/2026.08/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/spyder/2026.08/image.sif",
      "programUrl": "https://containers.projecteureka.ai/spyder/2026.08/container-program.json"
    },
    {
      "name": "tensorflow",
      "version": "2026.09",
      "kind": "flow",
      "session": "flow",
      "category": "machine-learning",
      "tags": [
        "tensorflow",
        "ml",
        "cuda",
        "gpu",
        "python",
        "flow"
      ],
      "arch": "x86_64",
      "minCores": 4,
      "minMemory": 16,
      "minGpus": 0,
      "appVersion": "2.18.0-gpu",
      "display_name": "TensorFlow",
      "filePath": "/vault/containers/tensorflow/2026.09/image.sif",
      "connectUrl": "",
      "container_args": "",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "b088d667df22c39c1ced943379ba732f32d9991a08f7b54b97e16f0b70375a1f",
      "sha256Url": "https://containers.projecteureka.ai/tensorflow/2026.09/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/tensorflow/2026.09/image.sif",
      "programUrl": "https://containers.projecteureka.ai/tensorflow/2026.09/container-program.json"
    },
    {
      "name": "terminal",
      "version": "2026.08",
      "kind": "interactive",
      "session": "http",
      "category": "shell",
      "tags": [
        "shell",
        "http"
      ],
      "arch": "x86_64",
      "minCores": 1,
      "minMemory": 2,
      "minGpus": 0,
      "appVersion": "ttyd",
      "display_name": "Terminal",
      "filePath": "/vault/containers/terminal/2026.08/image.sif",
      "connectUrl": "rnode:/",
      "container_args": "ttyd --port $PORT --writable --credential $USER:$PASSWORD bash",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "cdec6f4c5bd97b5233efe85c1c4ddc7dcb6b2c6e22abe9f5be30cf07910528c9",
      "sha256Url": "https://containers.projecteureka.ai/terminal/2026.08/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/terminal/2026.08/image.sif",
      "programUrl": "https://containers.projecteureka.ai/terminal/2026.08/container-program.json"
    },
    {
      "name": "ubuntu-desktop",
      "version": "2026.09",
      "kind": "interactive",
      "session": "gui",
      "category": "",
      "tags": [],
      "arch": "x86_64",
      "minCores": 2,
      "minMemory": 4,
      "minGpus": 0,
      "appVersion": "",
      "display_name": "Ubuntu Desktop",
      "filePath": "/vault/containers/ubuntu-desktop/2026.09/image.sif",
      "connectUrl": "rnode:/",
      "container_args": "start-desktop.sh",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "a21ec42b05e6aa02f44a04e2c3dd931b6264f428a62010a933dd7a410ed856f1",
      "sha256Url": "https://containers.projecteureka.ai/ubuntu-desktop/2026.09/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/ubuntu-desktop/2026.09/image.sif",
      "programUrl": "https://containers.projecteureka.ai/ubuntu-desktop/2026.09/container-program.json"
    },
    {
      "name": "ubuntu-tmux",
      "version": "2026.09",
      "kind": "interactive",
      "session": "http",
      "category": "",
      "tags": [],
      "arch": "x86_64",
      "minCores": 1,
      "minMemory": 2,
      "minGpus": 0,
      "appVersion": "",
      "display_name": "Ubuntu Terminal",
      "filePath": "/vault/containers/ubuntu-tmux/2026.09/image.sif",
      "connectUrl": "rnode:/",
      "container_args": "ttyd --port %PORT% --writable tmux new-session -A -s main env -u PROMPT_COMMAND bash",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "7a891349d7e3e3ca21d02a03faca56f894c254007a88d7404fe37a37f2737edd",
      "sha256Url": "https://containers.projecteureka.ai/ubuntu-tmux/2026.09/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/ubuntu-tmux/2026.09/image.sif",
      "programUrl": "https://containers.projecteureka.ai/ubuntu-tmux/2026.09/container-program.json"
    },
    {
      "name": "vllm",
      "version": "2026.09",
      "kind": "flow",
      "session": "flow",
      "category": "llm",
      "tags": [
        "vllm",
        "llm",
        "cuda",
        "gpu",
        "http",
        "flow"
      ],
      "arch": "x86_64",
      "minCores": 4,
      "minMemory": 24,
      "minGpus": 1,
      "appVersion": "0.8.5",
      "display_name": "vLLM",
      "filePath": "/vault/containers/vllm/2026.09/image.sif",
      "connectUrl": "",
      "container_args": "",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "c92c3d89ae760ee7900d099eba2bac05e2000bbeff01db0f25c6da1a3cf18a6f",
      "sha256Url": "https://containers.projecteureka.ai/vllm/2026.09/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/vllm/2026.09/image.sif",
      "programUrl": "https://containers.projecteureka.ai/vllm/2026.09/container-program.json"
    },
    {
      "name": "wrf",
      "version": "2026.09",
      "kind": "flow",
      "session": "flow",
      "category": "hpc",
      "tags": [
        "wrf",
        "wps",
        "weather",
        "hpc",
        "cli",
        "flow",
        "mpi"
      ],
      "arch": "x86_64",
      "minCores": 4,
      "minMemory": 16,
      "minGpus": 0,
      "appVersion": "WRF/WPS 4.6",
      "display_name": "WRF",
      "filePath": "/vault/containers/wrf/2026.09/image.sif",
      "connectUrl": "",
      "container_args": "",
      "binds": [],
      "env": [],
      "config": {},
      "sha256": "458f729eabdef7060b5aebb06f6cf314fb8ba177778cc618ee4d4c66bd35e89e",
      "sha256Url": "https://containers.projecteureka.ai/wrf/2026.09/image.sif.sha256",
      "catalogUrl": "https://containers.projecteureka.ai/wrf/2026.09/image.sif",
      "programUrl": "https://containers.projecteureka.ai/wrf/2026.09/container-program.json"
    }
  ]
}
