Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

adding artic version 1.5.8 #1134

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ To learn more about the docker pull rate limits and the open source software pro
| [ANIclustermap](https://hub.docker.com/r/staphb/aniclustermap/) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/aniclustermap)](https://hub.docker.com/r/staphb/aniclustermap) | <ul><li>[1.3.0](aniclusteramp/1.3.0/)</li><li>[1.4.0](aniclusteramp/1.4.0/)</li></ul> | https://github.com/moshi4/ANIclustermap |
| [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](./ariba/2.14.4/)</li><li>[2.14.6](./ariba/2.14.6/)</li><li>[2.14.7](./ariba/2.14.7/)</li></ul> | https://github.com/sanger-pathogens/ariba |
| [artic](https://hub.docker.com/r/staphb/artic) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/artic)](https://hub.docker.com/r/staphb/artic) | <ul><li>[1.2.4-1.11.1 (artic-medaka)](artic/1.2.4-1.11.1/)</li><li>[1.2.4-1.12.0 (artic-medaka)](artic/1.2.4-1.12.0/)</li></ul> | https://github.com/artic-network/fieldbioinformatics |
| [artic](https://hub.docker.com/r/staphb/artic) <br/> [![docker pulls](https://badgen.net/docker/pulls/staphb/artic)](https://hub.docker.com/r/staphb/artic) | <ul><li>[1.2.4-1.11.1 (artic-medaka)](artic/1.2.4-1.11.1/)</li><li>[1.2.4-1.12.0 (artic-medaka)](artic/1.2.4-1.12.0/)</li><li>[1.5.8](./artic/1.5.8/)</li></ul> | https://github.com/artic-network/fieldbioinformatics |
| [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
96 changes: 96 additions & 0 deletions artic/1.5.8/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
ARG ARTIC_VER=1.5.8

FROM mambaorg/micromamba:1.5.8 AS app

ARG ARTIC_VER

LABEL base.image="mambaorg/micromamba:1.5.8"
LABEL dockerfile.version="1"
LABEL software="artic"
LABEL software.version="${ARTIC_VER}"
LABEL description="A bioinformatics pipeline for working with virus sequencing data sequenced with nanopore"
LABEL website="https://github.com/artic-network/fieldbioinformatics"
LABEL license="https://github.com/artic-network/fieldbioinformatics/blob/master/LICENSE"
LABEL sop="https://artic.network/ncov-2019/ncov2019-bioinformatics-sop.html"
LABEL maintainer="Erin Young"
LABEL maintainer.email="eriny@utah.gov"

USER root
WORKDIR /

RUN apt-get update && apt-get install -y --no-install-recommends \
wget \
ca-certificates \
procps \
gcc \
make \
pkg-config \
zlib1g-dev \
libbz2-dev \
liblzma-dev \
libcurl4-gnutls-dev \
libssl-dev \
python3-dev \
python3-pip \
python-is-python3 && \
apt-get autoclean && rm -rf /var/lib/apt/lists/*

RUN micromamba create -n artic -y -c conda-forge -c bioconda -c defaults \
artic=${ARTIC_VER} && \
micromamba clean -a -f -y && \
mkdir /data

ENV PATH="${PATH}:/opt/conda/envs/artic/bin/" \
CONDA_PREFIX="/opt/conda/envs/artic/" \
LC_ALL=C.UTF-8

RUN artic_get_models

CMD artic --help

WORKDIR /data

##### ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- #####
##### Step 2. Set up the testing stage. #####
##### The docker image is built to the 'test' stage before merging, but #####
##### the test stage (or any stage after 'app') will be lost. #####
##### ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- #####

# A second FROM insruction creates a new stage
# new base for testing
FROM app AS test
ARG ARTIC_VER

# print help and version info; check dependencies (not all software has these options available)
# Mostly this ensures the tool of choice is in path and is executable
RUN artic --help && \
artic --version

WORKDIR /

# test that came with artic
RUN wget -q https://github.com/artic-network/fieldbioinformatics/archive/refs/tags/v${ARTIC_VER}.tar.gz && \
tar -vxf v${ARTIC_VER}.tar.gz && \
cd /fieldbioinformatics-${ARTIC_VER} && ls && \
bash ./test-runner.sh clair3

WORKDIR /test

# using on "real" data (sample files were not sequenced with version 5.3.2 primers)
# filtering fastq files
RUN wget -q ftp://ftp.sra.ebi.ac.uk/vol1/fastq/SRR224/050/SRR22452250/SRR22452250_1.fastq.gz && \
artic guppyplex --min-length 400 --max-length 700 --directory . --prefix SRR22452250_1.fastq.gz --output SRR22452250_1_filtered.fastq.gz

# running artic minion with user-provided bed and reference
RUN wget -q https://raw.githubusercontent.com/artic-network/primer-schemes/master/nCoV-2019/V5.3.2/SARS-CoV-2.primer.bed && \
wget -q https://raw.githubusercontent.com/artic-network/primer-schemes/master/nCoV-2019/V5.3.2/SARS-CoV-2.reference.fasta && \
artic minion --normalise 200 --threads 4 --model ont --read-file SRR22452250_1_filtered.fastq.gz --bed SARS-CoV-2.primer.bed --ref SARS-CoV-2.reference.fasta test1 && \
ls test1*

# running artic as it pulls schemes from github
RUN artic minion --normalise 200 --threads 4 --model ont --read-file SRR22452250_1_filtered.fastq.gz --scheme-name sars-cov-2 --scheme-version V5.3.2 test2 && \
ls test2*


RUN echo "included models" && \
ls ${CONDA_PREFIX}/bin/models
76 changes: 76 additions & 0 deletions artic/1.5.8/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
# artic fieldbioinformatics container

Main tool : [artic](https://github.com/artic-network/fieldbioinformatics)

Full documentation: [https://github.com/artic-network/fieldbioinformatics](https://github.com/artic-network/fieldbioinformatics)

There is also a very useful SOP: [https://artic.network/ncov-2019/ncov2019-bioinformatics-sop.html](https://artic.network/ncov-2019/ncov2019-bioinformatics-sop.html)
And additional documentation: [https://artic.readthedocs.io/en/latest/](https://artic.readthedocs.io/en/latest/)

> A bioinformatics pipeline for working with virus sequencing data sequenced with nanopore.

WARNING : This container does not contain the primer schemes found at [https://github.com/artic-network/primer-schemes](https://github.com/artic-network/primer-schemes). Those will have to be downloaded and mounted separately. There are now commands to download the use the primers at runtime.

This image DOES contain the medaka models downloaded with `artic_get_models`

## Example Usage with the artic primers

```bash
# filtering reads
artic guppyplex --min-length 400 --max-length 700 --directory . --prefix SRR22452250_1.fastq.gz --output SRR22452250_1_filtered.fastq.gz

# downloading medaka models for clair3
artic_get_models

# running the artic minion workflow
# the result files will all start with test*
artic minion --normalise 200 --medaka-model ont --threads 4 --read-file sample.fastq.gz --scheme-directory primer-schemes --scheme-version 5.3.2 nCoV-2019 test

# running the artic minion workflow with user-provided primer bedfiles and references
artic minion --normalise 200 --threads 4 --model ont --read-file sample.fastq.gz --scheme-name sars-cov-2 --scheme-version V5.3.2 name

```

In general, any primer scheme can be used as long as it meets [artic's requirements](https://github.com/artic-network/primer-schemes).



## Medaka models

Artic uses [Clair3](https://github.com/HKU-BAL/Clair3), which uses medaka models. Medaka updates frequently, and artic can throw errors when corresponding ONT models are not found.

These are the medaka models in this image:
```
# included models at /opt/conda/envs/artic/bin/models
hifi
hifi_revio
hifi_sequel2
ilmn
ont
ont_guppy5
r1041_e82_260bps_fast_g632
r1041_e82_260bps_hac_g632
r1041_e82_260bps_hac_v400
r1041_e82_260bps_hac_v410
r1041_e82_260bps_sup_g632
r1041_e82_260bps_sup_v400
r1041_e82_260bps_sup_v410
r1041_e82_400bps_fast_g632
r1041_e82_400bps_hac_g615
r1041_e82_400bps_hac_g632
r1041_e82_400bps_hac_v400
r1041_e82_400bps_hac_v410
r1041_e82_400bps_hac_v420
r1041_e82_400bps_hac_v430
r1041_e82_400bps_hac_v500
r1041_e82_400bps_sup_g615
r1041_e82_400bps_sup_v400
r1041_e82_400bps_sup_v410
r1041_e82_400bps_sup_v420
r1041_e82_400bps_sup_v430
r1041_e82_400bps_sup_v500
r104_e81_hac_g5015
r104_e81_sup_g5015
r941_prom_hac_g360+g422
r941_prom_sup_g5014
```
Loading