FROM node:8-alpine

ARG npm_token

HEALTHCHECK --interval=20s --retries=2 --start-period=10s --timeout=10s \
  CMD curl -f http://localhost:$PORT || exit 1

ENV WORKDIR                                 /usr/src/app

WORKDIR                                     $WORKDIR

RUN apk --update add --virtual build-dependencies python-dev build-base
RUN apk update && apk add --no-cache git curl krb5-dev python py-pip openssl ca-certificates

ENV NPM_TOKEN $npm_token
RUN echo "//registry.npmjs.org/:_authToken=${NPM_TOKEN}" >> .npmrc

ADD package-lock.json                       $WORKDIR
ADD package.json                            $WORKDIR

RUN npm install -q

COPY .                                      $WORKDIR/

ENV NODE_ENV production

RUN rm $WORKDIR/.npmrc && apk del git

ENV NODE_OPTIONS '-r @ekingdom/nodejs-common/swagger'
EXPOSE 3031 3033

CMD [ "npm", "start" ]
