-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathDockerfile
More file actions
76 lines (73 loc) · 1.89 KB
/
Dockerfile
File metadata and controls
76 lines (73 loc) · 1.89 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
# Dockerfile
#
# BUILD STAGE: BWA, MINIMAP2, KALIGN, NPGRAPH
#
FROM maven:3.6.0-jdk-11-slim AS build
# set non-interactive mode
ENV DEBIAN_FRONTEND noninteractive
# Install dependencies
RUN apt-get update && \
apt-get install -y --no-install-recommends apt-utils && \
apt-get install --yes git \
python3 \
python3-pkg-resources \
build-essential \
gcc-multilib \
dh-autoreconf \
cmake \
zlib1g-dev
#Minimap2
WORKDIR /build
RUN git clone https://github.com/lh3/minimap2.git
WORKDIR /build/minimap2
RUN git checkout v2.17
RUN make
RUN mkdir -p /build/bin/ && cp -p minimap2 /build/bin/
#BWA
WORKDIR /build
RUN git clone https://github.com/lh3/bwa.git
WORKDIR /build/bwa
RUN git checkout v0.7.17
RUN make
RUN cp -p bwa /build/bin/
#KALIGN3
WORKDIR /build
RUN git clone https://github.com/TimoLassmann/kalign.git
WORKDIR /build/kalign
RUN git checkout 3.1
RUN ./autogen.sh --prefix=/build/
RUN make && make install
#ABPOA
WORKDIR /build
RUN git clone https://github.com/yangao07/abPOA.git
WORKDIR /build/abPOA
RUN git checkout v1.0.3
RUN make
RUN cp bin/abpoa /build/bin/
#SPOA
WORKDIR /build
RUN git clone --recursive https://github.com/rvaser/spoa
WORKDIR /build/spoa
RUN git checkout 3.0.1
WORKDIR /build/spoa/build
RUN cmake -DCMAKE_BUILD_TYPE=Release -Dspoa_build_executable=ON ..
RUN make
RUN cp bin/spoa /build/bin/
#NPGRAPH
WORKDIR /build/app
ADD pom.xml .
RUN ["/usr/local/bin/mvn-entrypoint.sh", "mvn", "verify", "clean", "--fail-never"]
ADD . .
RUN ["mvn", "package"]
RUN cp -p target/assembly-0.2.1-beta.jar /build/bin/
#READFISH
#Waiting for code update for MinKNOW core 4.04
#
# Package stage
#
FROM openjdk:11-jre-slim
RUN apt-get update && apt-get install libgtk-3-0 libglu1-mesa -y && apt-get update
COPY --from=build /build/bin /usr/local/bin
EXPOSE 8080
ENTRYPOINT ["java","-cp","/usr/local/bin/assembly-0.2.1-beta.jar"]
CMD ["org.rtassembly.NPGraphCmd","--msa=kalign3","--aligner=minimap2","--gui"]