QIIME: Difference between revisions

From Alliance Doc
Jump to navigation Jump to search
No edit summary
(→‎With singularity: workaround for time zone error)
Line 60: Line 60:
It is also possible to run QIIME2 through singularity. A docker image is available at [https://hub.docker.com/u/qiime2 qiime2]. First, you need to build a singularity image from [[Singularity/en#Creating_an_image_using_Docker_Hub|docker]]:
It is also possible to run QIIME2 through singularity. A docker image is available at [https://hub.docker.com/u/qiime2 qiime2]. First, you need to build a singularity image from [[Singularity/en#Creating_an_image_using_Docker_Hub|docker]]:


{{commands
|module load singularity
|singularity build qiime2-2019.10.sif docker://qiime2/core:2019.10
}}
Then run your code as any other singularity [[Singularity/en|job]].
On first importing data into QIIME format you may receive an error ending with a message like this:
<pre>
<pre>
module load singularity
Timezone offset does not match system offset: 0 != -18000. Please, check your config files.
singularity build qiime2-2019.10.sif docker://qiime2/core:2019.10
</pre>
</pre>
This can be worked around by setting a time zone before invoking Singularity:


Then run your code as any other singularity [[Singularity/en|job]].
{{commands
|export TZ='UTC'
|singularity exec qiime2-2019.10.sif qiime tools import ...
}}


=References = <!--T:11-->
=References = <!--T:11-->

Revision as of 18:53, 11 February 2020

Other languages:

QIIME (pronounced chime) stands for Quantitative Insights Into Microbial Ecology, is an open-source bioinformatics pipeline for performing microbiome analysis from raw DNA sequencing data. QIIME is designed to take users from raw sequencing data generated on Illumina or other platforms to publication-quality graphics and statistics. This includes demultiplexing and quality filtering, OTU picking, taxonomic assignment, phylogenetic reconstruction, diversity analyses and visualizations. QIIME has been applied to studies based on billions of sequences from tens of thousands of samples.

Note: QIIME 2 has replaced QIIME 1 as of January 1, 2018; version 1 is no longer supported.

Installation

QIIME 2 can be installed in your home directory using conda. It is not possible to install this software using pip at this time.

The installation procedure depends on whether or not you have a conda environment.

With a conda environment

Although we do not recommend using conda environments in an HPC environment, we provide the option to do so at your own peril.

General installation instructions by the QIIME 2 developers are found here. Instructions adapted for Compute Canada systems are given here for version 2019.7. If a new version of the .yml file is released (check the link), use the newer version by updating the instructions below.

eb Miniconda3-4.5.12.eb
module load miniconda3
conda update conda
wget https://data.qiime2.org/distro/core/qiime2-2019.7-py36-linux-conda.yml
conda env create -n qiime2-2019.7 --file qiime2-2019.7-py36-linux-conda.yml
conda init bash
conda activate qiime2-2019.7

Remember to log out and log back in after the "conda init bash" step.

To run QIIME 2, use

module load miniconda3
conda activate qiime2-2019.7

Without a conda environment (preferred)

Since we know that conda environments can create more problems that they solve in HPC systems, we provide EasyBuild packages that can be used with the eb command. To install version 2019.7, use

eb --rebuild Miniconda3-4.7.10.eb QIIME2-2019.7.eb 

This takes a while, but will provide you with the qiime/2019.7 module that you need to load before using QIIME 2.

module load qiime2/2019.7

With singularity

It is also possible to run QIIME2 through singularity. A docker image is available at qiime2. First, you need to build a singularity image from docker:

[name@server ~]$ module load singularity
[name@server ~]$ singularity build qiime2-2019.10.sif docker://qiime2/core:2019.10


Then run your code as any other singularity job.

On first importing data into QIIME format you may receive an error ending with a message like this:

Timezone offset does not match system offset: 0 != -18000. Please, check your config files.

This can be worked around by setting a time zone before invoking Singularity:

[name@server ~]$ singularity exec qiime2-2019.10.sif qiime tools import ...


References

QIIME homepage
EasyBuild documentation
Getting started with Conda