-
Notifications
You must be signed in to change notification settings - Fork 12
Expand file tree
/
Copy pathDockerfile.pinned
More file actions
96 lines (83 loc) · 2.68 KB
/
Dockerfile.pinned
File metadata and controls
96 lines (83 loc) · 2.68 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
# DANGER: Beware of changing this dockerfile, orchestrating the versioning in these R/python packages was very challenging
FROM continuumio/miniconda3:24.9.2-0
RUN mkdir /workspace && \
mkdir /envs
WORKDIR /envs
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && \
apt-get install -yq --no-install-recommends \
wget \
gpg \
software-properties-common \
build-essential && \
rm -rf /var/lib/apt/lists/*
RUN conda install mamba=2.0.5 -c conda-forge -y
# Install R packages from conda-forge
RUN mamba install -c conda-forge -y \
r-base=4.3.3 \
r-recommended=4.3 \
r-irkernel=1.3.2 \
r-factominer=2.11 \
r-rcolorbrewer=1.1_3 \
r-devtools=2.4.5 \
r-broom=1.0.7 \
r-data.table=1.15.4 \
r-enrichr=3.2 \
r-factoextra=1.0.7 \
r-ggnewscale=0.5.0 \
r-ggrepel=0.9.6 \
r-ggpubr=0.6.0 \
r-ggvenn=0.1.10 \
r-janitor=2.2.1 \
r-multcomp=1.4_26 \
r-matrix=1.6_5 \
r-pheatmap=1.0.12 \
r-tidyverse=2.0.0 \
r-readxl=1.4.3 \
r-reshape=0.8.9 \
r-rstatix=0.7.2 \
r-viridis=0.6.5 \
udocker=1.3.17 \
imbalanced-learn=0.13.0 \
ipykernel=6.29.5 \
sqlite=3.47.2
RUN python -m ipykernel install --user --name python3 --display-name "Python 3 (ipykernel)"
RUN R -e 'IRkernel::installspec(name = "R", displayname = "R (4.3.3)")'
# I separate these because not all packages need both channels, additionally,
# creating multiple layers makes caching easier
RUN mamba install -c conda-forge -c bioconda -y \
biokit=0.5.0 \
gseapy=1.1.4 \
blast=2.16.0 \
clipkit=2.3.0 \
fastqc=0.12.1 \
iqtree=2.3.6 \
mafft=7.526 \
metaeuk=7.bba0d80 \
mygene=3.2.2 \
perl=5.32.1 \
phykit=2.0.1 \
pydeseq2=0.4.12 \
spades=4.0.0 \
trim-galore=0.6.10 \
bioconductor-enhancedvolcano=1.20.0 \
bioconductor-deseq2=1.42.0 \
bioconductor-clusterprofiler=4.10.0 \
bioconductor-org.hs.eg.db=3.18.0 \
bioconductor-genomicranges=1.54.1 \
bioconductor-summarizedexperiment=1.32.0 \
bioconductor-apeglm=1.24.0
COPY kernel_requirements.txt .
# Install conda packages first
RUN mamba install -c conda-forge --file kernel_requirements.txt -y
# Install pip packages
RUN pip install aiodocker ldp==0.26.0 fhaviary[server]==0.19.0 futurehouse-client==0.3.14
# Certain tools are not easily installable via conda. A common practice for
# bioinformaticians is to use udocker to run certain heavy duty omics processing
# tools in an isolated environment
# RUN udocker --allow-root install && \
# udocker --allow-root pull ezlabgva/busco:v5.8.0_cv1
WORKDIR /workspace
RUN mamba clean --all -f -y && \
conda clean --all -f -y && \
rm -rf /root/.cache/pip