This repository has been archived by the owner on Jul 8, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 6
/
Dockerfile
117 lines (92 loc) · 3.68 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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
# ______________________ ______ __
# / _/ ____/ ____/ ____/ / ____/__ / /_
# / // / / / __/ / / / __/ _ \/ __/
# _/ // /___/ /_/ / /___ / /_/ / __/ /_
#/___/\____/\____/\____/ \____/\___/\__/
# Banner @ http://goo.gl/VCY0tD
FROM ubuntu:14.04
MAINTAINER ICGC <[email protected]>
ENV EGA_VERSION 2.2.2
ENV GT_VERSION 3.8.7
ENV GT_VERSION_LONG 207
ENV GDC_VERSION gdc-client_v1.3.0_Ubuntu14.04_x64
#
# Update apt, add FUSE support, required libraries and basic command line tools
#
RUN apt-get update && \
apt-get -y upgrade && \
apt-get install -y libfuse-dev fuse software-properties-common && \
apt-get install -y python-pip python-dev libffi-dev && \
# Required to install clients
apt-get install -y unzip curl wget && \
# Required for Genetorrent and icgc
apt-get install -y libicu52 && \
# Required to download Genetorrent
apt-get install -y openssl libssl-dev && \
# Required for addressing ownership of files created by root
apt-get install -y inotify-tools
#
# Install Oracle JDK 8 for icgc storage client, ega
#
RUN add-apt-repository ppa:webupd8team/java
RUN apt-get update && apt-get upgrade -y
RUN echo oracle-java8-installer shared/accepted-oracle-license-v1-1 select true | /usr/bin/debconf-set-selections
RUN apt-get install -y \
oracle-java8-installer \
oracle-java8-set-default
ENV JAVA_HOME /usr/lib/jvm/java-8-oracle
#
# Download and install latest EGA download client version
#
RUN mkdir -p /icgc/ega-download-demo && \
cd /icgc/ega-download-demo && \
wget -qO- https://www.ebi.ac.uk/ega/sites/ebi.ac.uk.ega/files/documents/EgaDemoClient_$EGA_VERSION.zip -O temp.zip ; \
unzip temp.zip -d /icgc/ega-download-demo
#
# Install GeneTorrent and add to PATH
#
RUN mkdir -p /icgc/genetorrent && \
cd /icgc/genetorrent && \
wget -qO- https://annai.egnyte.com/dd/LWTWQGXeAi/ -O genetorrent-download.deb && \
wget -qO- https://annai.egnyte.com/dd/Ixrj77etn2 -O genetorrent-common.deb && \
apt-get install libboost-filesystem1.54.0 libboost-program-options1.54.0 libboost-regex1.54.0 libboost-system1.54.0 libxerces-c3.1 libxqilla6 python-support &&\
dpkg -i ./genetorrent-common.deb && \
dpkg -i ./genetorrent-download.deb
ENV PATH=$PATH:/icgc/genetorrent/bin
#
# Install latest version of storage client distribution, import modified logback file
#
RUN mkdir -p /icgc/score-client && \
cd /icgc/score-client && \
wget -qO- 'https://artifacts.oicr.on.ca/artifactory/dcc-release/bio/overture/score-client/[RELEASE]/score-client-[RELEASE]-dist.tar.gz' | \
tar xvz --strip-components 1 && \
mkdir -p /icgc/score-client/logs && \
chmod a+w /icgc/score-client/logs && \
mkdir -p /icgc/proxy
COPY ./logback.xml /icgc/score-client/conf
COPY ./icgc-storage-client-proxy.sh /icgc/proxy/icgc-storage-client-proxy
RUN chmod og+x /icgc/proxy/icgc-storage-client-proxy
#
# Install latest version of gdc download tool
#
RUN mkdir -p /icgc/gdc-data-transfer-tool && \
cd /icgc/gdc-data-transfer-tool && \
wget -qO- https://gdc.cancer.gov/system/files/authenticated%20user/0/$GDC_VERSION.zip -O temp.zip ; \
unzip temp.zip -d /icgc/gdc-data-transfer-tool ; \
rm temp.zip && \
cd /icgc
ENV PATH=$PATH:/icgc/gdc-data-transfer-tool
#
# Install icgc-get for development purposes and make mount point directory, install aws-cli, cleanup pip
#
RUN export DEBIAN_FRONTEND=noninteractive && \
apt-get upgrade -y && \
pip install -U pip setuptools && \
pip install pyyaml && \
pip install awscli && \
pip uninstall -y pip setuptools && \
mkdir /icgc/mnt
#
# Set working directory for convenience with interactive usage, copy icgc-get for development purposes
#
WORKDIR /icgc