forked from pnnl/proven-docker
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathDockerfile
executable file
·64 lines (58 loc) · 2.95 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
###
# Build the proven hybrid service
# Extend the payara/micro container to run the hybrid service
###
# FROM openjdk:8-jdk-alpine AS alibababuild
#
# RUN apk update \
# && apk upgrade \
# && apk add --no-cache git apache-ant maven nss \
# && mkdir /build \
# && cd /build \
# && git -c advice.detachedHead=false clone https://bitbucket.org/openrdf/alibaba.git -b '2.0' \
# && cd alibaba \
# && sed -i 's/javassist.url = http:/javassist.url = https:/' dependencies.properties \
# && sed -i 's/slf4j.url = http:/slf4j.url = https:/' dependencies.properties \
# && sed -i 's/openrdf-sesame.url = http:/openrdf-sesame.url = https:/' dependencies.properties \
# && mvn -B -q -Dmaven.test.skip=true source:jar package install \
# && ant build-sdk
#
FROM openjdk:8-jdk-alpine AS provenbuild
ARG TIMESTAMP
COPY dep/openrdf-alibaba-2.0.jar /root/.m2/repository/org/openrdf/alibaba/alibaba/2.0/alibaba-2.0.jar
RUN echo $TIMESTAMP > /dockerbuildversion.txt \
&& echo $TIMESTAMP \
&& apk update \
# && apk upgrade \
&& apk add --no-cache git nss \
&& mkdir /build \
&& cd /build \
&& git -c advice.detachedHead=false clone https://github.com/pnnl/proven-message.git -b 'v1.3.6' --single-branch \
&& cd /build/proven-message \
&& git log -1 --pretty=format:"%h" >> /dockerbuildversion.txt \
&& echo ' : proven-message' >> /dockerbuildversion.txt \
&& ./gradlew clean \
&& ./gradlew build \
&& ./gradlew publishToMavenLocal \
&& ls -l /build/proven-message/build/libs \
&& cd /build \
&& git -c advice.detachedHead=false clone https://github.com/pnnl/proven-cluster.git -b 'v1.4.1' --single-branch \
&& cd /build/proven-cluster/proven-member \
&& git log -1 --pretty=format:"%h" >> /dockerbuildversion.txt \
&& echo ' : proven-cluster' >> /dockerbuildversion.txt \
&& ./gradlew clean \
&& ./gradlew war \
&& ls -l /build/proven-message/build/libs
FROM payara/micro:5.181
COPY --from=provenbuild /build/proven-message/build/libs/proven-message-0.5-all-in-one.jar /opt/payara/deployments/proven-message-0.5-all-in-one.jar
COPY --from=provenbuild /build/proven-cluster/proven-member/hybrid-service/build/libs/hybrid.war /opt/payara/deployments/hybrid.war
COPY --from=provenbuild /dockerbuildversion.txt /opt/payara/deployments/dockerbuildversion.txt
RUN cat /opt/payara/deployments/dockerbuildversion.txt
USER root
RUN mkdir -p /proven && chown payara:payara /proven
USER payara
VOLUME /proven
ADD proven-system-properties /opt/payara/deployments/proven-system-properties
ADD hazelcast-proven-data.xml /opt/payara/deployments/hazelcast-proven-data.xml
EXPOSE 8080
CMD ["--deploy", "/opt/payara/deployments/hybrid.war", "--hzconfigfile", "/opt/payara/deployments/hazelcast-proven-data.xml", "--systemproperties", "/opt/payara/deployments/proven-system-properties", "--addlibs", "/opt/payara/deployments/proven-message-0.5-all-in-one.jar"]