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

Adds updated Dorado 0.8.3 #1107

Merged
merged 6 commits into from
Nov 20, 2024
Merged

Conversation

fraser-combe
Copy link
Contributor

Update Dorado to version 0.8.3 with Pigz support

The Dockerfile has minor changes from version 0.8.0:

  1. Updated to the newest version 0.8.3.
  2. Added the pigz dependency to enable faster zipping of files from Dorado outputs.

The Docker image was successfully built and verified using the following commands:

docker run --rm dorado:0.8.3 dorado basecaller --help
docker run --rm dorado:0.8.3 dorado --version

==========
== CUDA ==
==========
CUDA Version 12.2.0

Container image Copyright (c) 2016-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.

This container image and its contents are governed by the NVIDIA Deep Learning Container License.
By pulling and using the container, you accept the terms and conditions of this license:
https://developer.nvidia.com/ngc/nvidia-deep-learning-container-license

A copy of this license is made available in this container at /NGC-DL-CONTAINER-LICENSE for your convenience.

[2024-11-19 22:14:54.552] [info] Running: "--version"
0.8.3+98456f7

Please replace all '[ ]' with '[X]' to demonstrate completion.
-->

Pull Request (PR) checklist:

  • Include a description of what is in this pull request in this message.
  • The dockerfile successfully builds to a test target for the user creating the PR. (i.e. docker build --tag samtools:1.15test --target test docker-builds/samtools/1.15 )
  • Directory structure as name of the tool in lower case with special characters removed with a subdirectory of the version number (i.e. spades/3.12.0/Dockerfile)
    • (optional) All test files are located in same directory as the Dockerfile (i.e. shigatyper/2.0.1/test.sh)
  • Create a simple container-specific README.md in the same directory as the Dockerfile (i.e. spades/3.12.0/README.md)
    • If this README is longer than 30 lines, there is an explanation as to why more detail was needed
  • Dockerfile includes the recommended LABELS
  • Main README.md has been updated to include the tool and/or version of the dockerfile(s) in this PR
  • Program_Licenses.md contains the tool(s) used in this PR and has been updated for any missing

@erinyoung
Copy link
Contributor

@fraser-combe , normally we just add new functionality in the latest release. Were you planning on using version 0.8.0 once 0.8.3 was deployed?

@kapsakcj kapsakcj self-requested a review November 20, 2024 16:46
@fraser-combe
Copy link
Contributor Author

My bad, I didnt mean to edit the 0.8.0 files, I have corrected and repushed

@fraser-combe
Copy link
Contributor Author

Image built locally successfully

$ docker build -t dorado:0.8.3 . --no-cache
[+] Building 724.8s (13/13) FINISHED                                                                                                                                                     docker:default
 => [internal] load build definition from Dockerfile                                                                                                                                               0.0s
 => => transferring dockerfile: 2.20kB                                                                                                                                                             0.0s
 => [internal] load metadata for docker.io/nvidia/cuda:12.2.0-devel-ubuntu20.04                                                                                                                    0.0s
 => [internal] load .dockerignore                                                                                                                                                                  0.0s
 => => transferring context: 2B                                                                                                                                                                    0.0s
 => [app 1/5] FROM docker.io/nvidia/cuda:12.2.0-devel-ubuntu20.04                                                                                                                                  0.0s
 => CACHED [app 2/5] WORKDIR /usr/src/app                                                                                                                                                          0.0s
 => [app 3/5] RUN apt-get update &&     apt-get install -y --no-install-recommends wget ca-certificates pigz &&     rm -rf /var/lib/apt/lists/* && apt-get autoclean                              13.0s
 => [app 4/5] RUN wget https://cdn.oxfordnanoportal.com/software/analysis/dorado-0.8.3-linux-x64.tar.gz     && tar -xzvf dorado-0.8.3-linux-x64.tar.gz -C /opt     && rm dorado-0.8.3-linux-x64.  74.9s
 => [app 5/5] RUN mkdir /dorado_models &&     cd /dorado_models &&     dorado download --model all                                                                                               165.3s 
 => [test 1/4] RUN wget -O /usr/src/app/dna_r10.4.1_e8.2_260bps-FLO_PRO114-SQK_NBD114_96_260-4000.pod5   https://github.com/nanoporetech/dorado/raw/release-v0.7/tests/data/pod5/dna_r10.4.1_e8.2  0.5s 
 => [test 2/4] WORKDIR /usr/src/app                                                                                                                                                                0.0s 
 => [test 3/4] RUN dorado basecaller     --device cpu     /dorado_models/[email protected]     dna_r10.4.1_e8.2_260bps-FLO_PRO114-SQK_NBD114_96_260-4000.pod5     --emit-moves  448.1s 
 => [test 4/4] RUN test -s basecalled.sam                                                                                                                                                          0.2s 
 => exporting to image                                                                                                                                                                            22.2s 
 => => exporting layers                                                                                                                                                                           22.1s 
 => => writing image sha256:2f2e957cb5537cb01cdbd1856e8f75dd356f815bfc7a0d9cdcec9d3e3e0726fa                                                                                                       0.0s 
 => => naming to docker.io/library/dorado:0.8.3          

@kapsakcj
Copy link
Collaborator

Here's the dockerfile diff:

$ diff dorado/0.8.0/Dockerfile dorado/0.8.3/Dockerfile 
4c4
< ARG DORADO_VER=0.8.0
---
> ARG DORADO_VER=0.8.3
23c23
<     apt-get install -y --no-install-recommends wget ca-certificates && \
---
>     apt-get install -y --no-install-recommends wget ca-certificates pigz && \

Thanks for sharing the output of the test 👍 I expect the github actions wf to fail due to hard drive size just like the last time.

I've built the image locally and have pushed it up to dockerhub and quay.io. Here are the commands I ran:

# build/tag images locally
docker_build --target app -t staphb/dorado:0.8.3 dorado/0.8.3
docker_build --target app -t staphb/dorado:latest dorado/0.8.3
docker_build --target app -t quay.io/staphb/dorado:latest dorado/0.8.3
docker_build --target app -t quay.io/staphb/dorado:0.8.3 dorado/0.8.3

# push images to quay and dockerhub
docker push quay.io/staphb/dorado:0.8.3
docker push quay.io/staphb/dorado:latest
docker push staphb/dorado:latest
docker push staphb/dorado:0.8.3

@kapsakcj kapsakcj merged commit 97ac25d into StaPH-B:master Nov 20, 2024
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants