forked from murphycj/AGFusion
-
Notifications
You must be signed in to change notification settings - Fork 5
/
Dockerfile
47 lines (35 loc) · 1.82 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
FROM ubuntu:bionic
# AGFusion original source code is available at https://github.com/murphycj/AGFusion
# This docker image was originally derived from rachelbj/agfusion:1.1
# INSTALL DEPENDENCIES
ENV DEBIAN_FRONTEND=noninteractive
ENV PYENSEMBL_CACHE_DIR=/opt
RUN apt-get update -y
RUN apt-get install -y build-essential python3 python3-pip python3-matplotlib python3-pandas python3-future python3-biopython curl less vim libnss-sss git zip
RUN pip3 install pyensembl
# Additional libraries needed for AGFusion build command
RUN apt-get install -y default-libmysqlclient-dev
RUN pip3 install mysqlclient
# INSTALL AGFUSION & DATABASE FILES
ENV ensembl_version=105
# Download latest AGFusion from source and install with pip
WORKDIR /usr/local/bin
RUN git clone https://github.com/genome/AGFusion.git
WORKDIR /usr/local/bin/AGFusion
RUN pip3 install .
# Install AGFusion databases
RUN mkdir -p /opt/agfusiondb/
WORKDIR /opt/agfusiondb
# Pre-generated db files are available for ensembl_version < 93 and can be downloaded using:
# RUN agfusion download -s homo_sapiens -r ${ensembl_version} -d /opt/agfusiondb/
# RUN agfusion download -s mus_musculus -r ${ensembl_version} -d /opt/agfusiondb/
# To use newer versions, the db must be built from source with the follow commands:
# At the time of writing, this downloads Pfam release 35
RUN curl http://ftp.ebi.ac.uk/pub/databases/Pfam/current_release/database_files/pfamA.txt.gz > pfamA.txt.gz
RUN gunzip pfamA.txt.gz
RUN agfusion build --dir . --species homo_sapiens --release ${ensembl_version} --pfam pfamA.txt
RUN agfusion build --dir . --species mus_musculus --release ${ensembl_version} --pfam pfamA.txt
RUN rm pfamA.txt
# Install pyensembl databases
RUN pyensembl install --species homo_sapiens --release ${ensembl_version}
RUN pyensembl install --species mus_musculus --release ${ensembl_version}