https://github.com/kaczmarj/diffusion-containers
example of neuroimaging containers for diffusion (and other things)
https://github.com/kaczmarj/diffusion-containers
Last synced: 2 months ago
JSON representation
example of neuroimaging containers for diffusion (and other things)
- Host: GitHub
- URL: https://github.com/kaczmarj/diffusion-containers
- Owner: kaczmarj
- Created: 2019-04-11T16:19:50.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2019-04-11T16:22:17.000Z (about 6 years ago)
- Last Synced: 2025-02-10T03:22:29.322Z (4 months ago)
- Language: Dockerfile
- Size: 2.93 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# diffusion imaging analysis containers
This repository contains instructions for creating Linux containers for the processing of diffusion MR images. Individual containers are created for DTIPrepTools, FreeSurfer, and FSL. These containers will be specified using Dockerfiles, built using Docker, and then converted to Singularity for use on high-performance computing clusters. Singularity is an HPC-friendly container implementation that preserves a user's privileges, whereas Docker can escalate a user to root. Graphical user interfaces are also easier to use with Singularity.
Here are the instructions to [install Docker](https://docs.docker.com/install/) and to [install Singularity](https://www.sylabs.io/guides/3.0/user-guide/installation.html). You must be running Linux to use Singularity.
## DTIPrepTools
The specification for the DTIPrepTools container is in [dtipreptools.Dockerfile](dtipreptools.Dockerfile). This file was written by hand.
Build Docker container:
```bash
docker build --tag dtipreptools:latest - < dtipreptools.Dockerfile
```Convert to Singularity:
```bash
sudo singularity build dtipreptools.sif docker-daemon://dtipreptools:latest
```Run DTIPrep:
```bash
singularity run --bind /path/to/data:/data dtipreptools.sif DTIPrep
```## FreeSurfer
The specification for the FreeSurfer container is in [freesurfer.Dockerfile](freesurfer.Dockerfile). This file was generated with Neurodocker. This does not include support for `freeview`.
Generate the Dockerfile:
```bash
docker run --rm kaczmarj/neurodocker:master generate docker \
--base neurodebian:nd16.04-non-free \
--pkg-manager apt \
--freesurfer version=6.0.1 > freesurfer.Dockerfile
```Build Docker container:
```bash
docker build --tag freesurfer:latest - < freesurfer.Dockerfile
```Convert to Singularity:
```bash
sudo singularity build freesurfer.sif docker-daemon://freesurfer:latest
```## FSL
The specification for the FSL container is in [fsl.Dockerfile](fsl.Dockerfile). This file was generated with Neurodocker.
Generate the Dockerfile:
```bash
docker run --rm kaczmarj/neurodocker:master generate docker \
--base neurodebian:nd16.04-non-free \
--pkg-manager apt \
--install \
apt_opts='--quiet' \
fsl-core \
fsleyes \
fslview \
--add-to-entrypoint 'source /etc/fsl/fsl.sh' > fsl.Dockerfile
```Build Docker container:
```bash
docker build --tag fsl:latest - < fsl.Dockerfile
```Convert to Singularity:
```bash
sudo singularity build fsl.sif docker-daemon://fsl:latest
```Run fslview:
```bash
singularity run --bind /path/to/data:/data fsl.sif fslview /data/T1w.nii.gz
```