FROM openjdk:8-jdk-alpine
MAINTAINER Loafle <rnd@loafle.com>

ENV APP_FILENAME="com.loafle.overflow.central-1.0.0-SNAPSHOT.jar" \
    APP_HOME_PATH="/service" \
    APP_MAIN_CLASS="com.loafle.overflow.central.Central" \
    APP_CONF_PATH="/opt/conf" \
    PATH="$PATH:/opt/bin"

ADD build/docker/bin/*.sh /opt/bin/
ADD target/lib ${APP_HOME_PATH}/lib
ADD target/${APP_FILENAME} ${APP_HOME_PATH}/

RUN apk add --no-cache curl \
    && chmod +x /opt/bin/*.sh

ENV TINI_VERSION='0.17.0' \
    TINI_SHA='4007655082f573603c02bc1d2137443c8e153af047ffd088d02ccc01e6f06170'

# Use tini as subreaper in Docker container to adopt zombie processes
RUN curl -fsSL https://github.com/krallin/tini/releases/download/v${TINI_VERSION}/tini-static-amd64 -o /bin/tini \
    && chmod +x /bin/tini

VOLUME ${APP_CONF_PATH}
EXPOSE 50006

ENTRYPOINT ["/bin/tini", "--"]
CMD ["docker-entrypoint.sh"]