Run mriqc with docker — mriqc 0.8 documentation

# Run mriqc with docker

## Preliminaries

1. Get the Docker Engine (https://docs.docker.com/engine/installation/)
2. Have your data organized in BIDS (get BIDS specification, see BIDS paper).
3. Validate your data (http://incf.github.io/bids-validator/). You can safely use the BIDS-validator since no data is uploaded to the server, works locally in your browser.

## Running mriqc

1. Test that the mriqc container works correctly. A successful run will show the current mriqc version in the last line of the output:

>     docker run -it poldracklab/mriqc:latest -v

2. Run the participants level in subjects 001 002 003:

>     docker run -v <bids_dir>:/data -v <scratch_dir>:/scratch -w /scratch poldracklab/mriqc:latest /data /scratch/out participant --participant_level 001 002 003 -w /scratch/work

3. Run the group level and report generation on previously processed subjects:

>     docker run -v <bids_dir>:/data -v <scratch_dir>:/scratch -w /scratch poldracklab/mriqc:latest /data /scratch/out group -w /scratch/work

Note

If the argument `--participant_level` is not provided, then all subjects will be processed and the group level analysis will automatically be executed without need of running the command in item 3.

## Explaining the mriqc-docker command line

Let’s dissect this command line:

- `docker run`- instructs the docker engine to get and run certain image (which is the last of docker-related arguments: `poldracklab/mriqc:latest`)
- `-v <bids_dir>:/data` - instructs docker to mount the local directory <bids_dir>`into :code:/data` inside the container.
- `-v <scratch_dir>:/scratch`- instructs docker to mount the local directory <work_dir>`into :code:/scratch` inside the container.
- `poldracklab/mriqc:latest` - is the name of the image to be run, and sets an endpoint for the docker-related arguments in the command line.
- `/data /scratch/out participant -w /scratch/work` - are the standard arguments of mriqc.