HPC installation

You can install and execute TaxoFlow in your HPC cluster just by cloning the repository and following the tutorial as for Codespaces environment:

git clone https://github.com/jeffe107/taxoflow_tutorial.git
cd taxoflow_tutorial/TaxoFlow

From here, you will need to install Nextflow locally and pin the version (24.10.6); you can follow the local installation directions. Moreover, you must be aware that probably you can’t rely on Docker to run the pipeline as it requires root privileges. Fortunately, Nextflow can easily handle this for you by just changing the container images and enabling Apptainer/Singularity in the config files. For instance:

  • On a given process, this would be the Singularity/Apptainer container created using Seqera Containers for an AMD64 architecture to execute the Bracken process:
bracken.nf
1
2
3
4
process BRACKEN {
    ...
	container "community.wave.seqera.io/library/bracken:3.1--77382b4340548c89"
    ...

Specific architecture

Considering that the architecture of the HPC can change, we can’t provide images for all infrastuctures. However, by using the above-mentioned tutorial and the software versions provided on Part 1 - Pipeline, you can build the images for each process using Seqera Containers

  • And, on the config file, enable using Apptainer/Singularity as the container engine to run the pipeline:
nextflow.config
17
18
apptainer.enabled = true
singularity.enabled = true

Mounting directories

It is important to keep in mind that using Singularity/Apptainer requires a bit of extra-work in terms of configuration to use files/directories. It is highly recommended to check the Nextflow official documentation in this regard before executing the pipeline.

During the pipeline development, you will notice that the Docker/Wave images are provided for each process using Seqera Containers, a platform where you just need to change the desired container engine and the computing architecture.

Please check this video to learn how to create your own Apptainer/Singularity images that you will place inside each process: