From 8a6300c0da39b3f46522561b95da9b7de206466e Mon Sep 17 00:00:00 2001 From: Andrew Moorman Date: Tue, 4 Apr 2023 17:07:32 -0400 Subject: [PATCH 1/6] Updated to CellRanger 7.1.0 --- Dockerfile | 4 ++-- Dockerfile.cromwell | 4 ++-- config.sh | 6 +++--- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/Dockerfile b/Dockerfile index 7c4d029..eaae42b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -16,13 +16,13 @@ RUN curl -o cellranger-${CELLRANGER_VERSION}.tar.gz ${DOWNLOAD_URL} \ && rm -rf cellranger-${CELLRANGER_VERSION}.tar.gz \ && mv cellranger-${CELLRANGER_VERSION} /opt/ -# V(D)J GRCh38 Reference - 7.0.0 (May 17, 2022) +# V(D)J GRCh38 Reference - 7.1.0 (Dec 7, 2022) RUN curl -O https://cf.10xgenomics.com/supp/cell-vdj/refdata-cellranger-vdj-GRCh38-alts-ensembl-${VDJ_REFERENCE_VERSION}.tar.gz \ && tar xzf refdata-cellranger-vdj-GRCh38-alts-ensembl-${VDJ_REFERENCE_VERSION}.tar.gz \ && rm -rf refdata-cellranger-vdj-GRCh38-alts-ensembl-${VDJ_REFERENCE_VERSION}.tar.gz \ && mv refdata-cellranger-vdj-GRCh38-alts-ensembl-${VDJ_REFERENCE_VERSION} /opt/ -# V(D)J GRCm38 Reference - 7.0.0 (May 17, 2022) +# V(D)J GRCm38 Reference - 7.1.0 (Dec 7, 2022) RUN curl -O https://cf.10xgenomics.com/supp/cell-vdj/refdata-cellranger-vdj-GRCm38-alts-ensembl-${VDJ_REFERENCE_VERSION}.tar.gz \ && tar xzf refdata-cellranger-vdj-GRCm38-alts-ensembl-${VDJ_REFERENCE_VERSION}.tar.gz \ && rm -rf refdata-cellranger-vdj-GRCm38-alts-ensembl-${VDJ_REFERENCE_VERSION}.tar.gz \ diff --git a/Dockerfile.cromwell b/Dockerfile.cromwell index 4644a72..58aca38 100644 --- a/Dockerfile.cromwell +++ b/Dockerfile.cromwell @@ -16,13 +16,13 @@ RUN curl -o cellranger-${CELLRANGER_VERSION}.tar.gz ${DOWNLOAD_URL} \ && rm -rf cellranger-${CELLRANGER_VERSION}.tar.gz \ && mv cellranger-${CELLRANGER_VERSION} /opt/ -# V(D)J GRCh38 Reference - 7.0.0 (May 17, 2022) +# V(D)J GRCh38 Reference - 7.1.0 (Dec 7, 2022) RUN curl -O https://cf.10xgenomics.com/supp/cell-vdj/refdata-cellranger-vdj-GRCh38-alts-ensembl-${VDJ_REFERENCE_VERSION}.tar.gz \ && tar xzf refdata-cellranger-vdj-GRCh38-alts-ensembl-${VDJ_REFERENCE_VERSION}.tar.gz \ && rm -rf refdata-cellranger-vdj-GRCh38-alts-ensembl-${VDJ_REFERENCE_VERSION}.tar.gz \ && mv refdata-cellranger-vdj-GRCh38-alts-ensembl-${VDJ_REFERENCE_VERSION} /opt/ -# V(D)J GRCm38 Reference - 7.0.0 (May 17, 2022) +# V(D)J GRCm38 Reference - 7.1.0 (Dec 7, 2022) RUN curl -O https://cf.10xgenomics.com/supp/cell-vdj/refdata-cellranger-vdj-GRCm38-alts-ensembl-${VDJ_REFERENCE_VERSION}.tar.gz \ && tar xzf refdata-cellranger-vdj-GRCm38-alts-ensembl-${VDJ_REFERENCE_VERSION}.tar.gz \ && rm -rf refdata-cellranger-vdj-GRCm38-alts-ensembl-${VDJ_REFERENCE_VERSION}.tar.gz \ diff --git a/config.sh b/config.sh index d14df04..4b4b7e7 100644 --- a/config.sh +++ b/config.sh @@ -1,6 +1,6 @@ -version="7.0.0" -vdj_ref_version="7.0.0" -site_url="https://support.10xgenomics.com/single-cell-gene-expression/software/downloads/7.0/" +version="7.1.0" +vdj_ref_version="7.1.0" +site_url="https://support.10xgenomics.com/single-cell-gene-expression/software/downloads/7.1/" download_url="" # docker related From c538673459bd2870e0be6949d23d17dafc693a6e Mon Sep 17 00:00:00 2001 From: Andrew Moorman Date: Tue, 4 Apr 2023 17:28:24 -0400 Subject: [PATCH 2/6] Reverted CR VDJ version to 7.0.0; CR's v7.1.0 tar.gz file is corrupted --- config.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config.sh b/config.sh index 4b4b7e7..191185a 100644 --- a/config.sh +++ b/config.sh @@ -1,5 +1,5 @@ version="7.1.0" -vdj_ref_version="7.1.0" +vdj_ref_version="7.0.0" site_url="https://support.10xgenomics.com/single-cell-gene-expression/software/downloads/7.1/" download_url="" From 2e93bcc2af096374fa33763ebd2e98725882384f Mon Sep 17 00:00:00 2001 From: Tobias Krause Date: Thu, 2 May 2024 21:42:56 -0400 Subject: [PATCH 3/6] Update to version 8.0.0. Move builds to SAIL from quay and hisplan --- Dockerfile | 19 +++++-------------- Dockerfile.cromwell | 19 +++++-------------- LICENSE | 2 +- README.md | 9 +++------ build.sh | 6 ++---- config.sh | 10 +++++----- push.sh | 6 +++--- 7 files changed, 24 insertions(+), 47 deletions(-) diff --git a/Dockerfile b/Dockerfile index 7c4d029..ad764af 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,9 +1,10 @@ -FROM centos:7 +FROM almalinux:8.9 -LABEL maintainer="Jaeyoung Chun (chunj@mskcc.org)" +# CentOS 8 is dead, so we are using AlmaLinux 8.9. Built by Oracle. + +LABEL maintainer="Tobias Krause (krauset@mskcc.org)" ARG CELLRANGER_VERSION -ARG VDJ_REFERENCE_VERSION ARG DOWNLOAD_URL ENV PATH /opt/cellranger-${CELLRANGER_VERSION}:$PATH @@ -16,17 +17,7 @@ RUN curl -o cellranger-${CELLRANGER_VERSION}.tar.gz ${DOWNLOAD_URL} \ && rm -rf cellranger-${CELLRANGER_VERSION}.tar.gz \ && mv cellranger-${CELLRANGER_VERSION} /opt/ -# V(D)J GRCh38 Reference - 7.0.0 (May 17, 2022) -RUN curl -O https://cf.10xgenomics.com/supp/cell-vdj/refdata-cellranger-vdj-GRCh38-alts-ensembl-${VDJ_REFERENCE_VERSION}.tar.gz \ - && tar xzf refdata-cellranger-vdj-GRCh38-alts-ensembl-${VDJ_REFERENCE_VERSION}.tar.gz \ - && rm -rf refdata-cellranger-vdj-GRCh38-alts-ensembl-${VDJ_REFERENCE_VERSION}.tar.gz \ - && mv refdata-cellranger-vdj-GRCh38-alts-ensembl-${VDJ_REFERENCE_VERSION} /opt/ - -# V(D)J GRCm38 Reference - 7.0.0 (May 17, 2022) -RUN curl -O https://cf.10xgenomics.com/supp/cell-vdj/refdata-cellranger-vdj-GRCm38-alts-ensembl-${VDJ_REFERENCE_VERSION}.tar.gz \ - && tar xzf refdata-cellranger-vdj-GRCm38-alts-ensembl-${VDJ_REFERENCE_VERSION}.tar.gz \ - && rm -rf refdata-cellranger-vdj-GRCm38-alts-ensembl-${VDJ_REFERENCE_VERSION}.tar.gz \ - && mv refdata-cellranger-vdj-GRCm38-alts-ensembl-${VDJ_REFERENCE_VERSION} /opt/ +# Removing VDJ reference data compared to previous version to make the container smaller WORKDIR /opt diff --git a/Dockerfile.cromwell b/Dockerfile.cromwell index 4644a72..fb34eae 100644 --- a/Dockerfile.cromwell +++ b/Dockerfile.cromwell @@ -1,9 +1,10 @@ -FROM centos:7 +FROM almalinux:8.9 -LABEL maintainer="Jaeyoung Chun (chunj@mskcc.org)" +# CentOS 8 is dead, so we are using AlmaLinux 8.9. Built by Oracle. + +LABEL maintainer="Tobias Krause (krauset@mskcc.org)" ARG CELLRANGER_VERSION -ARG VDJ_REFERENCE_VERSION ARG DOWNLOAD_URL ENV PATH /opt/cellranger-${CELLRANGER_VERSION}:$PATH @@ -16,17 +17,7 @@ RUN curl -o cellranger-${CELLRANGER_VERSION}.tar.gz ${DOWNLOAD_URL} \ && rm -rf cellranger-${CELLRANGER_VERSION}.tar.gz \ && mv cellranger-${CELLRANGER_VERSION} /opt/ -# V(D)J GRCh38 Reference - 7.0.0 (May 17, 2022) -RUN curl -O https://cf.10xgenomics.com/supp/cell-vdj/refdata-cellranger-vdj-GRCh38-alts-ensembl-${VDJ_REFERENCE_VERSION}.tar.gz \ - && tar xzf refdata-cellranger-vdj-GRCh38-alts-ensembl-${VDJ_REFERENCE_VERSION}.tar.gz \ - && rm -rf refdata-cellranger-vdj-GRCh38-alts-ensembl-${VDJ_REFERENCE_VERSION}.tar.gz \ - && mv refdata-cellranger-vdj-GRCh38-alts-ensembl-${VDJ_REFERENCE_VERSION} /opt/ - -# V(D)J GRCm38 Reference - 7.0.0 (May 17, 2022) -RUN curl -O https://cf.10xgenomics.com/supp/cell-vdj/refdata-cellranger-vdj-GRCm38-alts-ensembl-${VDJ_REFERENCE_VERSION}.tar.gz \ - && tar xzf refdata-cellranger-vdj-GRCm38-alts-ensembl-${VDJ_REFERENCE_VERSION}.tar.gz \ - && rm -rf refdata-cellranger-vdj-GRCm38-alts-ensembl-${VDJ_REFERENCE_VERSION}.tar.gz \ - && mv refdata-cellranger-vdj-GRCm38-alts-ensembl-${VDJ_REFERENCE_VERSION} /opt/ +# Removing VDJ reference data compared to previous version to make the container smaller WORKDIR /opt diff --git a/LICENSE b/LICENSE index 59f69b0..9556eba 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2019 - 2022 Jaeyoung Chun +Copyright (c) 2019 - 2022 Jaeyoung Chun, Tobias Krause Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/README.md b/README.md index a66a394..3af92ce 100644 --- a/README.md +++ b/README.md @@ -1,14 +1,11 @@ # docker-cellranger -Dockerized Cell Ranger v7.0.0 +Dockerized Cell Ranger v8.0.0 - GEX: https://support.10xgenomics.com/single-cell-gene-expression/software/downloads/7.0/ - VDJ: https://support.10xgenomics.com/single-cell-vdj/software/downloads/7.0/ -Reference dataset included: - -- Human reference dataset (GRCh38/Ensembl/10x) required for Cell Ranger V(D)J -- Mouse reference dataset (GRCm38/Ensembl/10x) required for Cell Ranger V(D)J +Version 7.2 supports Flex + CITE, Version 8.0 supports Visium HD. ## License @@ -38,7 +35,7 @@ conda activate scing ```bash $ cellranger --help -cellranger cellranger-7.0.0 +cellranger cellranger-8.0.0 Process 10x Genomics Gene Expression, Feature Barcode, and Immune Profiling data USAGE: diff --git a/build.sh b/build.sh index 0e7a925..6d028b8 100755 --- a/build.sh +++ b/build.sh @@ -22,9 +22,8 @@ fi # build ${image_name}:${version} docker build \ - --tag ${image_name}:${version} \ + --tag ${image_cellranger_name}:${version} \ --build-arg DOWNLOAD_URL=${download_url} \ - --build-arg VDJ_REFERENCE_VERSION=${vdj_ref_version} \ --build-arg CELLRANGER_VERSION=${version} . # hack: comment the ENTRYPOINT and CMD lines to make it work for cromwell @@ -36,8 +35,7 @@ cat Dockerfile \ # build cromwell-${image_name}:${version} docker build \ - --tag cromwell-${image_name}:${version} \ + --tag cromwell-${image_cromwell_name}:${version} \ --build-arg DOWNLOAD_URL=${download_url} \ - --build-arg VDJ_REFERENCE_VERSION=${vdj_ref_version} \ --build-arg CELLRANGER_VERSION=${version} \ -f Dockerfile.cromwell . diff --git a/config.sh b/config.sh index d14df04..8eab7db 100644 --- a/config.sh +++ b/config.sh @@ -1,8 +1,8 @@ -version="7.0.0" -vdj_ref_version="7.0.0" +version="8.0.0" site_url="https://support.10xgenomics.com/single-cell-gene-expression/software/downloads/7.0/" -download_url="" +download_url="https://cf.10xgenomics.com/releases/cell-exp/cellranger-8.0.0.tar.gz?Expires=1714715076&Key-Pair-Id=APKAI7S6A5RYOXBWRPDA&Signature=iMQiaG3m8-8s3nkOq2v~lxbxErGe9SdbG4XF-lpoFmaSg3gPjneGlNWorqY6AvMx3jsHznRwXz3N3ZI5f39Xd0RofGh8j9N0RW0eiNMwoSq53isUyjYQlcxIOfbh9FTHNXO8aRc0oa7I5Uyz-W6hVRekGCYPk~ErtkNOCIjbHhHgj9kF5pazLAyquKUuOHJ6uEL72ISAGYtVgcOEgnXOIirwdRHxraeuFuCnPJS9Bp05XOhFS1hGB8Sd7TxYHMaJ1-MVV1BdGUJCIGb8Sx~iGV32DLI13UI~ZV64kLjUr2bYzWsSULyPwbGhv-x5TaHM24DB5mGO1D36B1QhSYTXfw__" # docker related -registry="quay.io/hisplan" -image_name="cellranger" +registry="docker.io" +image_cellranger_name="sailmskcc/cellranger" +image_cromwell_name="sailmskcc/cromwell-cellranger" diff --git a/push.sh b/push.sh index 1a86db5..1bb5169 100755 --- a/push.sh +++ b/push.sh @@ -2,7 +2,7 @@ source config.sh -echo "${registry}/${image_name}:${version}" +echo "${registry}/${image_cellranger_name}:${version}" -scing push --image=${registry}/${image_name}:${version} -scing push --image=${registry}/cromwell-${image_name}:${version} +scing push --image=${registry}/${image_cellranger_name}:${version} +scing push --image=${registry}/cromwell-${image_cromwell_name}:${version} From ea191c57ef26a4f3ded0fe4d254be904c37dfb90 Mon Sep 17 00:00:00 2001 From: Tobias Krause Date: Thu, 2 May 2024 21:56:41 -0400 Subject: [PATCH 4/6] Use amd64 built --- Dockerfile | 5 +++-- Dockerfile.cromwell | 5 +++-- build.sh | 2 ++ 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/Dockerfile b/Dockerfile index ad764af..67ad5ef 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM almalinux:8.9 +FROM almalinux/amd64:8.5 # CentOS 8 is dead, so we are using AlmaLinux 8.9. Built by Oracle. @@ -9,7 +9,8 @@ ARG DOWNLOAD_URL ENV PATH /opt/cellranger-${CELLRANGER_VERSION}:$PATH RUN yum group install -y "Development Tools" \ - && yum install -y which + && yum install -y which \ + && yum install -y glibc # cell ranger binaries RUN curl -o cellranger-${CELLRANGER_VERSION}.tar.gz ${DOWNLOAD_URL} \ diff --git a/Dockerfile.cromwell b/Dockerfile.cromwell index fb34eae..000e499 100644 --- a/Dockerfile.cromwell +++ b/Dockerfile.cromwell @@ -1,4 +1,4 @@ -FROM almalinux:8.9 +FROM almalinux/amd64:8.9 # CentOS 8 is dead, so we are using AlmaLinux 8.9. Built by Oracle. @@ -9,7 +9,8 @@ ARG DOWNLOAD_URL ENV PATH /opt/cellranger-${CELLRANGER_VERSION}:$PATH RUN yum group install -y "Development Tools" \ - && yum install -y which + && yum install -y which \ + && yum install -y glibc # cell ranger binaries RUN curl -o cellranger-${CELLRANGER_VERSION}.tar.gz ${DOWNLOAD_URL} \ diff --git a/build.sh b/build.sh index 6d028b8..b08d05d 100755 --- a/build.sh +++ b/build.sh @@ -23,6 +23,7 @@ fi # build ${image_name}:${version} docker build \ --tag ${image_cellranger_name}:${version} \ + --platform linux/amd64 \ --build-arg DOWNLOAD_URL=${download_url} \ --build-arg CELLRANGER_VERSION=${version} . @@ -36,6 +37,7 @@ cat Dockerfile \ # build cromwell-${image_name}:${version} docker build \ --tag cromwell-${image_cromwell_name}:${version} \ + --platform linux/amd64 \ --build-arg DOWNLOAD_URL=${download_url} \ --build-arg CELLRANGER_VERSION=${version} \ -f Dockerfile.cromwell . From eab57adcededcb56ed1743f55c2df94c4ea295f7 Mon Sep 17 00:00:00 2001 From: Tobias Krause Date: Thu, 2 May 2024 22:14:10 -0400 Subject: [PATCH 5/6] Fix almalinux version for amd64 support --- Dockerfile | 6 +++--- Dockerfile.cromwell | 6 +++--- run-smoke-test.sh | 8 ++++---- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/Dockerfile b/Dockerfile index 67ad5ef..c7f8aa8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM almalinux/amd64:8.5 +FROM almalinux/amd64:9.3-base-20231124 # CentOS 8 is dead, so we are using AlmaLinux 8.9. Built by Oracle. @@ -9,8 +9,8 @@ ARG DOWNLOAD_URL ENV PATH /opt/cellranger-${CELLRANGER_VERSION}:$PATH RUN yum group install -y "Development Tools" \ - && yum install -y which \ - && yum install -y glibc + && yum install -y which + #&& yum install -y glibc # cell ranger binaries RUN curl -o cellranger-${CELLRANGER_VERSION}.tar.gz ${DOWNLOAD_URL} \ diff --git a/Dockerfile.cromwell b/Dockerfile.cromwell index 000e499..15bdb5c 100644 --- a/Dockerfile.cromwell +++ b/Dockerfile.cromwell @@ -1,4 +1,4 @@ -FROM almalinux/amd64:8.9 +FROM almalinux/amd64:9.3-base-20231124 # CentOS 8 is dead, so we are using AlmaLinux 8.9. Built by Oracle. @@ -9,8 +9,8 @@ ARG DOWNLOAD_URL ENV PATH /opt/cellranger-${CELLRANGER_VERSION}:$PATH RUN yum group install -y "Development Tools" \ - && yum install -y which \ - && yum install -y glibc + && yum install -y which + #&& yum install -y glibc # cell ranger binaries RUN curl -o cellranger-${CELLRANGER_VERSION}.tar.gz ${DOWNLOAD_URL} \ diff --git a/run-smoke-test.sh b/run-smoke-test.sh index 71c6cf0..7ef8d16 100755 --- a/run-smoke-test.sh +++ b/run-smoke-test.sh @@ -4,16 +4,16 @@ source config.sh # cellranger docker run -it --rm \ - cellranger:${version} --help + ${image_cellranger_name}:${version} --help # cellranger count docker run -it --rm \ - cellranger:${version} count --help + ${image_cellranger_name}:${version} count --help # cellranger vdj docker run -it --rm \ - cellranger:${version} vdj --help + ${image_cellranger_name}:${version} vdj --help # cellranger version docker run -it --rm \ - cellranger:${version} --version + ${image_cellranger_name}:${version} --version From cce587587e66e6ff105f3d22946f8745595fe965 Mon Sep 17 00:00:00 2001 From: Tobias Krause Date: Thu, 2 May 2024 22:23:34 -0400 Subject: [PATCH 6/6] Fix docker image names, remove SCING dependency for push --- build.sh | 2 +- push.sh | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build.sh b/build.sh index b08d05d..ddd427a 100755 --- a/build.sh +++ b/build.sh @@ -36,7 +36,7 @@ cat Dockerfile \ # build cromwell-${image_name}:${version} docker build \ - --tag cromwell-${image_cromwell_name}:${version} \ + --tag ${image_cromwell_name}:${version} \ --platform linux/amd64 \ --build-arg DOWNLOAD_URL=${download_url} \ --build-arg CELLRANGER_VERSION=${version} \ diff --git a/push.sh b/push.sh index 1bb5169..b433346 100755 --- a/push.sh +++ b/push.sh @@ -4,5 +4,5 @@ source config.sh echo "${registry}/${image_cellranger_name}:${version}" -scing push --image=${registry}/${image_cellranger_name}:${version} -scing push --image=${registry}/cromwell-${image_cromwell_name}:${version} +docker push ${registry}/${image_cellranger_name}:${version} +docker push ${registry}/${image_cromwell_name}:${version}