BrainModes / leapp

0 stars 0 forks source link

Leapp on Singularity #2

Open sravanthi-upadrasta opened 4 weeks ago

sravanthi-upadrasta commented 4 weeks ago

Hi,

My institute supports Singularity on HPC and I created a Singularity image from Docker image created using docker build. However, I am unable to provide command line arguments while running the Singularity container thus created. Any pointers on what could be going wrong?

I created Singularity image using:

singularity build leapp-sing docker-archive://leapp.tar

I am trying to run this image using the following command:

singularity run $PATH_TO_IMAGE_FOLDER/leapp-sing -e Steps="full lesion dwi preproc normal" -e SubID="P001" -e MaskSpace="T2w" -e Mask="/home2/naga.sita/mask" leapp-sing:processing

FATAL: "Steps=full lesion dwi preproc normal": executable file not found in $PATH

Any pointers to run the Docker container using Singularity will be greatly appreciated.

Thanks, Sravanthi

PatrikBey commented 3 weeks ago

Hi Sravanthi,

for the case of singularity the provided environment variables of the container call need to be adjusted, as there are slight differences in the call syntax between docker and singularity. For your example the singularity specific call would be sth similar to:

singularity run \
    --bind $PATH_TO_YOUR_DATA:/data \
    --env Steps="full lesion dwi preproc normal" \
    --env SubID="P001" \
    --env MaskSpace="T2w" \
    --env Mask="/home2/naga.sita/mask" \
    $PATH_TO_IMAGE_FOLDER/leapp-sing.sif

Please note that for this step the processing derivatives of the structural pipeline are required (e.g. parcellation, processed T1w image etc.). The <> variable is also only required for performing the single virtual brain transplant processing step. Otherwise the lesion mask is to be assumed within the /anat folder as "sub-P001_T2w_lesion_mask.nii.gz" (see Fig. 3 )

Best Patrik