-
Notifications
You must be signed in to change notification settings - Fork 776
Description
I'm trying to pull a docker container with singularity in a nextflow pipeline after updating singularity.
Everything worked until singularity was updated to singularity ce version 4.0.3 on my HPC and I cleaned the singularity cache.
I defined in the .bashrc file the export SINGULARITY_CACHEDIR="/home/r.desantis/singularity/cachedir"
and export NXF_SINGULARITY_CACHEDIR="/home/r.desantis/singularity/cachedir"
However, when I try to pull a docker container with singularity in my nextflow pipeline, I have this error
Command error:
`ERROR: Unknown image format/type: /home/users/scratch/work/singularity/staphb-seqtk.img
ABORT : Retval = 255
`
In the singularity cachedir, I found the container with the .img extension, but it seems singularity doesn't recognize it.
Before having the unknown image error, I have this message during the pipeline running
Pulling Singularity image docker://staphb/seqtk:1.3 [cache /home/r.desantis/singularity/cachedir/staphb-seqtk-1.3.img]. So it seems that nextflow pulls the singularity container in exactly the directory that I defined in .bashrc.
If I manually pull the image with the current version of singularity, and run it, everything works:
singularity --version
singularity-ce version 4.0.3
singularity pull docker://staphb/seqtk:1.3
INFO: Using cached SIF image
singularity run seqtk_1.3.sif
bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)
bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)
Singularity>
It seems like if I pull manually the container, singularity creates the .sif image instead if I pull the image inside the pipeline, singularity pull the image with the extension .img
I've also update the nextflow version to 23.10.1.
And I declared in my nextflow.config
singularity {
enabled = true
autoMounts = true
}
Any suggestions?