Skip to content

Commit

Permalink
ARIBA 2.14.6 Update and Adding test Stage (#690)
Browse files Browse the repository at this point in the history
* Update ARIBA to 2.14.6 with basic test

* Add a basic README

* Include ARIBA 2.14.6

* Improve README

* Adhere to current repo standard

* Fix PYSAM ver typo

* added link to files

* Added SPADES_VER ARG

* Added CMD

* update Curtis' email

* minor changes - reset dockerfile.version to 1, added apt-get autoclean to clean up apt garbage; added a comment; consolidated 2 RUN layers in test stage

---------

Co-authored-by: Young <[email protected]>
Co-authored-by: Curtis Kapsak <[email protected]>
  • Loading branch information
3 people authored Jul 21, 2023
1 parent fd55464 commit a305159
Show file tree
Hide file tree
Showing 3 changed files with 121 additions and 1 deletion.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ To learn more about the docker pull rate limits and the open source software pro
| :--------: | ------- | -------- |
| [ABRicate](https://hub.docker.com/r/staphb/abricate/) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/abricate)](https://hub.docker.com/r/staphb/abricate) | <ul><li>0.8.7</li><li>0.8.13</li><li>0.8.13s (+serotypefinder db)</li><li>0.9.8</li><li>1.0.0</li><li>[1.0.1 (+ A. baumannii plasmid typing db)](https://github.com/StaPH-B/docker-builds/blob/master/abricate/1.0.1-Abaum-plasmid)</li><li>[1.0.1 (+ InsaFlu db)](https://github.com/StaPH-B/docker-builds/blob/master/abricate/1.0.1-insaflu-220727)</li></ul> | https://github.com/tseemann/abricate |
| [any2fasta](https://hub.docker.com/r/staphb/any2fasta/) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/any2fasta)](https://hub.docker.com/r/staphb/any2fasta) | <ul><li>0.4.2</li></ul> | https://github.com/tseemann/any2fasta |
| [ARIBA](https://hub.docker.com/r/staphb/ariba/) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/ariba)](https://hub.docker.com/r/staphb/ariba) | <ul><li>2.14.4</li></ul> | https://github.com/sanger-pathogens/ariba |
| [ARIBA](https://hub.docker.com/r/staphb/ariba/) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/ariba)](https://hub.docker.com/r/staphb/ariba) | <ul><li>2.14.4</li><li>[2.14.6](ariba/2.14.6/)</li></ul> | https://github.com/sanger-pathogens/ariba |
| [artic-ncov2019](https://hub.docker.com/r/staphb/artic-ncov2019) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/artic-ncov2019)](https://hub.docker.com/r/staphb/artic-ncov2019) | <ul><li>1.3.0</ul> | https://github.com/artic-network/fieldbioinformatics |
| [artic-ncov2019-epi2me](https://hub.docker.com/r/staphb/artic-ncov2019-epi2me) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/artic-ncov2019-epi2me)](https://hub.docker.com/r/staphb/artic-ncov2019-epi2me) | <ul><li>0.3.10</ul> | https://github.com/epi2me-labs/wf-artic |
| [artic-ncov2019-medaka](https://hub.docker.com/r/staphb/artic-ncov2019-medaka) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/artic-ncov2019-medaka)](https://hub.docker.com/r/staphb/artic-ncov2019-medaka) | <ul><li>1.1.0</ul> | https://github.com/artic-network/artic-ncov2019 |
Expand Down
88 changes: 88 additions & 0 deletions ariba/2.14.6/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
FROM ubuntu:bionic as app

# for easy upgrade later. ARG variables only persist during build time
# ARIBA=2.14.6, pysam=0.15.4; pysam=0.16.0 breaks ariba 2.14.4 (June 2020)
ARG PYSAM_VER="0.15.4"
ARG ARIBA_VER="2.14.6"
ARG SPADES_VER="3.15.5"

LABEL base.image="ubuntu:bionic"
LABEL dockerfile.version="1"
LABEL software="ARIBA"
LABEL software.version="2.14.6"
LABEL description="ARIBA: Antimicrobial Resistance Identification By Assembly"
LABEL website="https://github.com/sanger-pathogens/ariba"
LABEL license="https://github.com/sanger-pathogens/ariba/blob/master/LICENSE"
LABEL maintainer="Curtis Kapsak"
LABEL maintainer.email="[email protected]"
LABEL maintainer2="Harry Hung"
LABEL maintainer2.email="[email protected]"

# prevents having to enter commands during apt-get install
ARG DEBIAN_FRONTEND=noninteractive

# dependencies
RUN apt-get update && apt-get install --no-install-recommends -y \
python3-dev \
python3-pip \
python3-tk \
python3-setuptools \
python3-wheel \
cython3 \
zlib1g-dev \
bowtie2 \
mummer \
cd-hit \
wget \
curl \
gawk \
locales-all \
build-essential \
libbz2-dev \
libjpeg-dev \
liblzma-dev \
autoconf \
automake \
perl \
libcurl4-gnutls-dev \
libssl-dev && \
apt-get autoclean && rm -rf /var/lib/apt/lists/*

ENV LANG=en_US.UTF-8 \
LANGUAGE=en_US:en

# optional installation to enable the usage of SPAdes assembler
RUN wget https://github.com/ablab/spades/releases/download/v${SPADES_VER}/SPAdes-${SPADES_VER}-Linux.tar.gz && \
tar -xzf SPAdes-${SPADES_VER}-Linux.tar.gz && \
rm -r SPAdes-${SPADES_VER}-Linux.tar.gz && \
mkdir /data

# needed to avoid a matplotlib error
# https://github.com/sanger-pathogens/ariba/blob/b1b524c9d9588cba9d998c9121bd74c63856526/Dockerfile#L49
ENV MPLBACKEND="agg"

RUN pip3 install pysam==${PYSAM_VER} ariba==${ARIBA_VER}

# set $PATH and locale settings for singularity compatibility
ENV PATH="$PATH:/SPAdes-${SPADES_VER}-Linux/bin" \
LC_ALL=C

WORKDIR /data

# default command is to pull up help options
CMD ["ariba", "--help"]

# new base for testing
FROM app as test

# print out ARIBA version and
RUN ariba version

# run built-in test and confirm files are successfully created
RUN ariba test out && \
ls out/OUT/assemblies.fa.gz && \
ls out/OUT/assembled_genes.fa.gz && \
ls out/OUT/assembled_seqs.fa.gz && \
ls out/OUT/log.clusters.gz && \
ls out/OUT/report.tsv && \
ls out/OUT/version_info.txt
32 changes: 32 additions & 0 deletions ariba/2.14.6/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# ARIBA container

Main tool: [ARIBA](https://github.com/sanger-pathogens/ariba)

Additional tools:
- [pysam](https://github.com/pysam-developers/pysam) 0.15.4
- [SPAdes](https://github.com/ablab/spades) 3.15.5

Full documentation: [https://github.com/sanger-pathogens/ariba/wiki](https://github.com/sanger-pathogens/ariba/wiki)

Antimicrobial Resistance Identification By Assembly

ARIBA is a tool that identifies antibiotic resistance genes by running local assemblies. It can also be used for MLST calling.

The input is a FASTA file of reference sequences (can be a mix of genes and noncoding sequences) and paired sequencing reads. ARIBA reports which of the reference sequences were found, plus detailed information on the quality of the assemblies and any variants between the sequencing reads and the reference sequences.

## Example Usage

```bash
# Get reference data, for instance from CARD
ariba getref ncbi out.ncbi

# Prepare reference data for ARIBA
ariba prepareref -f out.ncbi.fa -m out.ncbi.tsv out.ncbi.prepareref

# Run local assemblies and call variants
ariba run out.ncbi.prepareref reads1.fastq reads2.fastq out.run

#Summarise data from several runs
ariba summary out.summary out.run1/report1.tsv out.run2/report2.tsv out.run3/report3.tsv
```
Please read the [ARIBA wiki page](https://github.com/sanger-pathogens/ariba/wiki) for full usage instructions.

0 comments on commit a305159

Please sign in to comment.