New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow nextflow to handle http protocol for Singularity images #1791
Comments
Hi @pditommaso below is a minimal example for you to be able to reproduce the error The #!/usr/bin/env nextflow
nextflow.enable.dsl = 2
process FASTQC {
conda (params.enable_conda ? "bioconda::fastqc=0.11.9" : null)
if (workflow.containerEngine == 'singularity' && !params.pull_docker_container) {
container "https://depot.galaxyproject.org/singularity/fastqc:0.11.9--0"
} else {
container "quay.io/biocontainers/fastqc:0.11.9--0"
}
output:
path "*.version.txt", emit: version
script:
"""
fastqc --version | sed -e "s/FastQC v//g" > fastqc.version.txt
"""
}
workflow {
FASTQC ( )
}
The params {
enable_conda = false
pull_docker_container = false
}
profiles {
conda { params.enable_conda = true }
docker {
docker.enabled = true
}
singularity {
singularity.enabled = true
singularity.autoMounts = true
}
} And we can execute this script using various ## Command below is the only one that fails
nextflow run main.nf -profile singularity
## Works
nextflow run main.nf -profile singularity --pull_docker_container
## Works
nextflow run main.nf -profile docker
## Works
nextflow run main.nf -profile conda As @apeltzer mentioned it seems like there is an issue with downloading Singularity images directly via We need this to work because it would be much easier downloading Singularity images directly if they exist rather than converting from Docker images. With DSL2, this will become more important because we will need numerous containers in order to run the pipeline. Thank you!! |
"https://depot.galaxyproject.org/singularity/fastqc:0.11.9--0" its not a recognized singularity image url |
Thanks. So the download of the image works as expected if you click on the link or via |
I mean does |
Not for me... $ singularity pull https://depot.galaxyproject.org/singularity/fastqc:0.11.9--0
FATAL: While pulling from image from http(s): Get https://depot.galaxyproject.org/singularity/fastqc:0.11.9--0: net/http: TLS handshake timeout But I just had a 💡 moment and tried another registry that hosts the containers and it works. Although, the registry itself seems to be more of an unofficial one for Biocontainers:
|
For me it does work just fine - both exec as well as the pull: singularity pull https\://containers.biocontainers.pro/s3/SingImgsRepo/biocontainers/v1.2.0_cv1/biocontainers_v1.2.0_cv1.img
singularity pull https://depot.galaxyproject.org/singularity/fastqc:0.11.9--0 |
Ok, nice, tho I think this is a new Singularity feature. NF at this time does not allow handling http protocol for Singularity. |
Patched. I'll include in the next release. |
Superstar 😍 |
Bug report
1.) Trying to run new nf-core/rnaseq pipeline:
nextflow run nf-core/rnaseq -r dev -profile bi,test,cluster
2.) Trying this with Docker - success :-)
3.) Singularity Version 3.4.2el7, works fine with all nf-core (+ internal pipelines), Nextflow V 20.07.1 - can check 20.10 but others have similar issues?
4.) Checking singularity command to download/work with image (with example command):
singularity exec -B /scratch/nextflow/work/peltzera -B /home/peltzera/nf-core/rnaseq/bin -B "$PWD" https\://containers.biocontainers.pro/s3/SingImgsRepo/biocontainers/v1.2.0_cv1/biocontainers_v1.2.0_cv1.img python --version
- works as intended
5.)
wget https\://containers.biocontainers.pro/s3/SingImgsRepo/biocontainers/v1.2.0_cv1/biocontainers_v1.2.0_cv1.img; singularity exec biocontainers_v1.2.0_cv1.img python --version
- works as intended
Comments:
Steps to reproduce the problem
Harshil is posting a minimal example soon ;-) Also, can reproduce by just running the
dev
version of nf-core/rnaseq on any system with singularity to reproduce. First DSLv2 pipeline in nf-core, so we don't have another example unfortunately.Program output
See above
Environment
The text was updated successfully, but these errors were encountered: