-
Notifications
You must be signed in to change notification settings - Fork 36
/
Copy pathDockerfile-alpine
35 lines (25 loc) · 1.26 KB
/
Dockerfile-alpine
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
FROM openjdk:8-jre-alpine
MAINTAINER Open Identity Platform Community <[email protected]>
ENV USER="openidm"
ENV OPENIDM_OPTS="-server -XX:+UseContainerSupport -Dlogback.configurationFile=conf/logging-config.groovy"
ENV OPENIDM_PASSWORD="openidm-admin"
ARG VERSION
WORKDIR /opt
#COPY openidm-zip/target/openidm-*.zip ./
RUN apk add --update --no-cache --virtual builddeps curl unzip \
&& apk upgrade --update --no-cache \
&& apk add bash \
&& apk update \
&& bash -c 'if [ ! -z "$VERSION" ] ; then rm -rf ./*.zip ; curl -L https://github.com/OpenIdentityPlatform/OpenIDM/releases/download/$VERSION/openidm-$VERSION.zip --output openidm-$VERSION.zip ; fi' \
&& unzip openidm-*.zip && rm -rf *.zip \
&& apk del unzip \
&& addgroup -S $USER \
&& adduser -S -u 1001 -G $USER $USER \
&& install -d -o $USER /opt/openidm \
&& chown -R $USER:$USER /opt/openidm \
&& chmod -R g=u /opt/openidm \
&& chmod +x /opt/openidm/*.sh
EXPOSE 8080
USER $USER
HEALTHCHECK --interval=30s --timeout=30s --start-period=10s --retries=3 CMD curl -i -o - --silent --header "X-OpenIDM-Username: openidm-admin" --header "X-OpenIDM-Password: $OPENIDM_PASSWORD" http://127.0.0.1:8080/openidm/info/ping | grep -q "\"ACTIVE_READY\""
ENTRYPOINT ["/opt/openidm/startup.sh"]