forked from umccr/umccrise
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Dockerfile
72 lines (60 loc) · 2.35 KB
/
Dockerfile
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
FROM ubuntu:16.04
MAINTAINER Vlad Saveliev "https://github.com/vladsaveliev"
ENV HOSTNAME umccrise_docker
ENV TEST_DATA_PATH=/umccrise/umccrise_test_data
ENV BCBIO_GENOMES_PATH=/genomes
ENV PON_PATH=/panel_of_normals
# Setup a base system
RUN apt-get update && \
apt-get install -y curl wget git unzip tar gzip bzip2 g++ make zlib1g-dev nano
# Setting locales and timezones, based on https://github.com/jacksoncage/node-docker/blob/master/Dockerfile
# (setting UTC for readr expecting UTC https://rdrr.io/github/tidyverse/readr/src/R/locale.R)
ENV LANGUAGE en_US.UTF-8
ENV LANG en_US.UTF-8
ENV LC_ALL en_US.UTF-8
RUN apt-get update && \
apt-get install -y locales language-pack-en && \
locale-gen en_US.UTF-8 && \
dpkg-reconfigure locales && \
apt-get install -y tzdata && \
echo "Etc/UTC" > /etc/timezone && \
dpkg-reconfigure -f noninteractive tzdata
# Install conda
RUN wget -nv https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh && \
bash miniconda.sh -b -p /miniconda
# Instead of `. /miniconda/etc/profile.d/conda.sh`:
ENV PATH /miniconda/bin:$PATH
ENV CONDA_EXE /miniconda/bin/conda
ENV CONDA_ROOT /miniconda
ENV CONDA_PYTHON_EXE /miniconda/bin/python
# Install conda environment
COPY environment.yml .
RUN hash -r && \
conda config --set always_yes yes --set changeps1 no && \
conda update -q conda && \
conda env create -n umccrise --file environment.yml
# Instead of `conda activate umccrise`
ENV PATH /miniconda/envs/umccrise/bin:$PATH
ENV CONDA_PREFIX /miniconda/envs/umccrise
ENV CONDA_DEFAULT_ENV umccrise
# Install source and Peter's circos library
COPY umccrise umccrise/umccrise
COPY scripts umccrise/scripts
COPY vendor umccrise/vendor
COPY setup.py umccrise/setup.py
COPY VERSION.txt umccrise/VERSION.txt
RUN pip install -e umccrise
# Symlinking gtar to fix the installation with devtools
RUN ln -s /bin/tar /bin/gtar && \
R -e "library(devtools) ; options(unzip = '/usr/bin/unzip') ; devtools::install_github('umccr/rock', ref = 'umccrise')"
# Install PCGR
RUN git clone https://github.com/vladsaveliev/pcgr /pcgr && \
bash /pcgr/install_no_docker/install.sh --skip-validation
# Clean up
RUN rm -rf umccrise/.git && \
rm -rf /var/lib/apt/lists/* && \
rm -rf /var/tmp/* && \
conda clean --yes --tarballs && \
cd /usr/local && \
apt-get clean && \
rm -rf /.cpanm