The pipeline crashes almost immediately with an early pipeline step
Sometimes a newly downloaded and set up nf-core pipeline will encounter an issue where a run almost immediately crashes (e.g. at fastqc
, output_documentation
etc.) saying the tool could not be found or similar.
The first thing to do is always check the .nextflow.log
to see if it reports contains specific error. Common cases are described below.
Note that just because Nextflow reports a particular tool failed, this does not necessarily mean it’s an issue with the tool itself. It’s important to always fully read the error message to identify possible causes.
Tool not found
The most common case is when a user has forgotten to specify a container/environment profile.
If you do not specify one with the -profile
, Nextflow by default looks for all the required tools that will be all manually installed on your machine/cluster and specified $PATH
.
It is not recommended to run without a container/environment system as then your analysis will not be reproducible by others. You should pick one of: docker
, singularity
, podman
and conda
- depending on which your system already has available. See the nf-core Installation documentation for more information.
Error related to Docker
You may have an outdated container. This happens more often when running on the dev
branch of a nf-core pipeline, because Docker will not update the container on each new commit, and thus may not get new tools called within the pipeline code.
To fix, just re-pull the pipeline’s Docker container manually with:
If you work in a dev
branch, you may also want to consider putting a request for a pull in each run you do with nextflow, by putting this line of code in your nextflow.config file:
Error related to Singularity
If you’re running Singularity, it could be that Nextflow cannot access your Singularity image properly - often due to missing bind paths. See Cannot find input files when using Singularity for more information.
Sometimes, mksquashfs
cannot be found on the login node or workstation that you intend to use, thus the Singularity image build fails unfortunately. See below code snippet that shows such a typical failure:
If this is the case, please install mksquashfs
or ask your IT department to install the package for you.
Error related to HPC Schedulers
If working on a cluster, pipelines can crash if the profile used is not correctly configured for that environment. Typical issues can include missing cluster profile in -profile
, incorrectly specified executor, or incompatible memory/CPU node maximums set in that institutional profile. See nf-core/configs and Nextflow documentation for more information.
These types of error can look like the following:
Cannot find input files when using Singularity
Depending on how you install Singularity on your system several reoccurring issues have been reported. Typically these result in error messages such as these:
You can verify if this is indeed a problem by using a Singularity Shell to access your container, and to check whether the required paths are available inside your container:
If any of these ls -la
commands returns a Not Found
error, you will need to set/update Singularity Bind Paths on your system.
The Singularity installation requires certain host paths to be bound. Please see Singularity Bind Paths Documentation for a more detailed explanation. In many cases this can be resolved by adding these paths to your /etc/singularity/singularity.conf
as highlighted in the documentation:
Alternatively, you can also add Singularity Bind Paths to your Nextflow call, e.g. using autoMounts
and/or runOptions
in the Singularity scope