-
Laurent Modolo authoredLaurent Modolo authored
Getting Started
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. You can follow the building your pipeline guide to learn how to build your own pipelines.
Prerequisites
To run nextflow on your computer you need to have java
(>= 1.8) installed.
java --version
and git
git --version
To be able to run existing tools in nextflow on your computer (src/nf_modules/
to see the list). You need to have docker
installed.
docker run hello-world
Alternatively if you are on Linux, you can use singularity
:
singularity run docker://hello-world
Installing
To install nextflow on your computer simply run the following command:
git clone git@gitbio.ens-lyon.fr/LBMC/nextflow
cd nextflow/
src/install_nextflow.sh
Running a toy RNASeq quantification pipeline
To run tests we first need to get a training set
cd data
git clone https://gitbio.ens-lyon.fr/LBMC/Hub/tiny_dataset.git
cp tiny_dataset/fastq/tiny_R1.fastq tiny_dataset/fastq/tiny2_R1.fastq
cp tiny_dataset/fastq/tiny_R2.fastq tiny_dataset/fastq/tiny2_R2.fastq
cp tiny_dataset/fastq/tiny_S.fastq tiny_dataset/fastq/tiny2_S.fastq
cd ..
Then to run the tests for a given tools run the following command:
./nextflow src/solution_RNASeq.nf --fastq "data/tiny_dataset/fastq/tiny2_R{1,2}.fastq.gz" --fasta "data/tiny_dataset/fasta/tiny_v2_10.fasta" --bed "data/tiny_dataset/annot/tiny.bed" -profile docker
Nextflow profile
By default le src/nextflow.config
file define 4 different profiles
-
-profile docker
each process of the pipeline will be executed within adocker
container locally -
-profile singularity
each process of the pipeline will be executed within asingularity
container locally -
-profile psmn
each process will be sent as a separate job within asingularity
container on the PSMN -
-profile ccin2p3
each process will be sent as a separate job within asingularity
container on the CCIN2P3
If the containers are not found locally, they are automatically downloaded before running the process. For the PSMN and CCIN2P3, the singularity
images are downloaded in a shared folder (/scratch/Bio/singularity
for the PSMN, and /sps/lbmc/common/singularity/
for the CCIN2P3)
PSMN
When running nextflow
on the PSMN, we recommend to use tmux
before launching the pipeline:
tmux
./nextflow src/solution_RNASeq.nf --fastq "data/tiny_dataset/fastq/tiny2_R{1,2}.fastq.gz" --fasta "data/tiny_dataset/fasta/tiny_v2_10.fasta" --bed "data/tiny_dataset/annot/tiny.bed" -profile psmn
Therefore, the nextflow
process will continue to run even if you are disconnected.
You can re-attach the tmux
session, with the command tmux a
(and press ctrl
+
b
+
d
to detach the attached session).
CCIN2P3
When runnning nextflow
on the CCIN2P3, you cannot use tmux
, instead you should send a daemon jobs which will launch the nextflow
command.
You can edit the src/ccin2p3.pbs
file to personalize your nextflow
command and send it with the command:
qsub src/ccin2p3.pbs