-
Notifications
You must be signed in to change notification settings - Fork 125
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
3 changed files
with
173 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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="[email protected]" | ||
|
||
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 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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 | ||
``` |