|
Size: 4804
Comment:
|
Size: 4870
Comment:
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 1: | Line 1: |
| == Using Containers with Brainstorm == |
= Using Containers with Brainstorm = |
| Line 5: | Line 4: |
| Some Brainstorm processes rely on external software distributed using '''containers''' (for example: ''duneuro''). Containers allow Brainstorm to run complex tools without requiring manual installation of dependencies. |
Some Brainstorm processes rely on external software distributed using '''containers''' (for example: ''duneuro''). Containers allow Brainstorm to run complex tools without requiring manual installation of dependencies. |
| Line 11: | Line 8: |
<<TableOfContents(3)>> ---- |
<<TableOfContents(2,2)>> |
| Line 20: | Line 11: |
| Line 26: | Line 16: |
| Line 30: | Line 21: |
| You do ''not'' need prior knowledge of containers to use Brainstorm. ---- |
You do ''not'' need prior knowledge of containers to use Brainstorm. {{attachment:bstContainer.jpg}} |
| Line 35: | Line 24: |
| Line 46: | Line 34: |
| '''Note:''' Docker requires a running ''daemon'' (a background service). Podman and Apptainer do not. |
|
| Line 49: | Line 43: |
| ||'''Operating system''' ||'''Recommended runtime''' || ||Windows ||Docker Desktop || ||macOS ||Docker Desktop || ||Linux (desktop) ||Docker or Podman || ||Linux (HPC) ||Apptainer / Singularity || |
|
| Line 50: | Line 49: |
| || '''Operating system''' || '''Recommended runtime''' || || Windows || Docker Desktop || || macOS || Docker Desktop || || Linux (desktop) || Docker or Podman || || Linux (HPC) || Apptainer / Singularity || |
|
| Line 59: | Line 53: |
| === Docker Desktop (recommended) === 1. Download Docker Desktop: . [[https://docs.docker.com/desktop/|Docker Desktop documentation]] |
|
| Line 60: | Line 57: |
| === Docker Desktop (recommended) === | 1. During installation: * Enable '''WSL 2''' if prompted * Restart your computer if required |
| Line 62: | Line 61: |
| 1. Download Docker Desktop: [[https://docs.docker.com/desktop/|Docker Desktop documentation]] 2. During installation: * Enable '''WSL 2''' if prompted * Restart your computer if required 3. Start '''Docker Desktop''' and wait until it reports that Docker is running |
1. Start '''Docker Desktop''' and wait until it reports that Docker is running |
| Line 76: | Line 68: |
| === Docker Desktop (recommended) === 1. Download Docker Desktop: . [[https://docs.docker.com/desktop/|Docker Desktop documentation]] |
|
| Line 77: | Line 72: |
| === Docker Desktop (recommended) === | 1. Install and launch Docker Desktop 1. Wait until Docker reports that it is running |
| Line 79: | Line 75: |
| 1. Download Docker Desktop: [[https://docs.docker.com/desktop/|Docker Desktop documentation]] 2. Install and launch Docker Desktop 3. Wait until Docker reports that it is running ''On macOS, Docker runs inside a virtual machine. This is normal and fully supported by Brainstorm.'' |
''On macOS, Docker runs inside a virtual machine. This is normal and fully supported by Brainstorm.'' |
| Line 91: | Line 80: |
| Line 93: | Line 81: |
Install Docker following the official instructions: [[https://docs.docker.com/get-docker/|Docker installation guide]] |
Install Docker following the official instructions: [[https://docs.docker.com/get-docker/|Docker installation guide]] |
| Line 98: | Line 84: |
| Line 101: | Line 88: |
| Line 103: | Line 89: |
Podman is a Docker-compatible alternative available on many Linux systems: [[https://podman.io/get-started|Podman getting started]] |
Podman is a Docker-compatible alternative available on many Linux systems: [[https://podman.io/get-started|Podman getting started]] |
| Line 112: | Line 96: |
| Line 114: | Line 97: |
| Line 118: | Line 100: |
| Line 122: | Line 105: |
| Line 125: | Line 109: |
If Apptainer is not available, please contact your system administrator or consult: [[https://apptainer.org/|Appt contandoer documentation]] |
If Apptainer is not available, please contact your system administrator or consult: [[https://apptainer.org/|Appt contandoer documentation]] |
| Line 132: | Line 114: |
| Line 136: | Line 117: |
| Line 145: | Line 127: |
| Line 147: | Line 128: |
| Line 150: | Line 130: |
| Brainstorm manages containers automatically. You only need to install a supported runtime. |
Brainstorm manages containers automatically. You only need to install a supported runtime. |
| Line 156: | Line 135: |
Make sure '''Docker Desktop is started''' and fully initialized, then retry the Brainstorm process. |
Make sure '''Docker Desktop is started''' and fully initialized, then retry the Brainstorm process. |
| Line 163: | Line 140: |
| If you are working on a shared system or cluster: | |
| Line 164: | Line 142: |
| If you are working on a shared system or cluster: | |
| Line 171: | Line 148: |
| Line 174: | Line 150: |
| On Windows and macOS, containers run inside a virtual machine, which may be slightly slower but is generally negligible for most workflows. |
On Windows and macOS, containers run inside a virtual machine, which may be slightly slower but is generally negligible for most workflows. |
| Line 180: | Line 155: |
| Line 186: | Line 160: |
| For additional help, please consult the Brainstorm forum: [[https://neuroimage.usc.edu/forums/|Brainstorm Forum]] |
For additional help, please consult the Brainstorm forum: [[https://neuroimage.usc.edu/forums/|Brainstorm Forum]] |
Using Containers with Brainstorm
Authors: Takfarinas Medani & Malte Höltershinken
Some Brainstorm processes rely on external software distributed using containers (for example: duneuro). Containers allow Brainstorm to run complex tools without requiring manual installation of dependencies.
This page explains how to install a supported container runtime on your system.
Contents
Containers for beginners
What is a container?
A container is a packaged version of a software tool that includes everything it needs to run.
With containers:
You do not need to install additional libraries
- The software runs the same way on different computers
- Brainstorm can automatically download and use the required tools
You do not need prior knowledge of containers to use Brainstorm.
Supported container runtimes
Brainstorm supports the following container runtimes:
Docker (recommended for most users)
Podman (Linux alternative to Docker)
Apptainer / Singularity (recommended on HPC clusters)
Brainstorm automatically detects which runtime is available on your system.
You only need to install one of them.
Note: Docker requires a running daemon (a background service).
Podman and Apptainer do not.
Which runtime should I install?
Operating system |
Recommended runtime |
Windows |
Docker Desktop |
macOS |
Docker Desktop |
Linux (desktop) |
Docker or Podman |
Linux (HPC) |
Apptainer / Singularity |
Windows
Docker Desktop (recommended)
- Download Docker Desktop:
- During installation:
Enable WSL 2 if prompted
- Restart your computer if required
Start Docker Desktop and wait until it reports that Docker is running
No additional configuration is required for Brainstorm.
macOS
Docker Desktop (recommended)
- Download Docker Desktop:
- Install and launch Docker Desktop
- Wait until Docker reports that it is running
On macOS, Docker runs inside a virtual machine. This is normal and fully supported by Brainstorm.
Linux (desktop or workstation)
Option 1: Docker
Install Docker following the official instructions: Docker installation guide
After installation, verify that Docker is running:
docker info
Option 2: Podman
Podman is a Docker-compatible alternative available on many Linux systems: Podman getting started
Podman does not require a background service.
Linux (HPC clusters)
Apptainer / Singularity (recommended)
Most HPC systems provide Apptainer (formerly Singularity) by default.
Check availability:
apptainer version
or
singularity version
If Apptainer is not available, please contact your system administrator or consult: Appt contandoer documentation
Container images in Brainstorm
You do not need to download container images manually.
When a Brainstorm process requires a container:
- Brainstorm checks whether the image is already available
- If not, you will be asked for confirmation
- The image is downloaded automatically
No additional commands are required.
Frequently Asked Questions
Do I need to learn Docker or containers to use Brainstorm?
No.
Brainstorm manages containers automatically. You only need to install a supported runtime.
Docker is installed but Brainstorm says it is not running
Make sure Docker Desktop is started and fully initialized, then retry the Brainstorm process.
I don’t have administrator rights on my computer
If you are working on a shared system or cluster:
- Apptainer / Singularity is usually available
- If not, contact your system administrator
Are containers slower than native installations?
On Linux systems, performance is usually identical.
On Windows and macOS, containers run inside a virtual machine, which may be slightly slower but is generally negligible for most workflows.
Summary
- Brainstorm supports Docker, Podman, and Apptainer / Singularity
Install one runtime appropriate for your system
- Brainstorm downloads required container images automatically
- No container expertise is required
For additional help, please consult the Brainstorm forum: Brainstorm Forum
