FROM debian:stretch-slim

ARG DEBIAN_FRONTEND=noninteractive
RUN apt-get update \
    && apt-get install -y --no-install-recommends \
        curl \
        ca-certificates \
        gnupg2 \
        libfontconfig \
    && curl -sL https://deb.nodesource.com/setup_10.x | bash - \
    && apt-get install -y --no-install-recommends \
        nodejs \
    && apt-get purge -y --auto-remove \
        curl \
        gnupg2 \
    && rm -rf /var/lib/apt/lists/* \
    && npm -g install pm2

WORKDIR /salix
COPY package.json package-lock.json ./
COPY loopback/package.json loopback/
COPY print/package.json print/
RUN npm install --only=prod

COPY loopback loopback
COPY back back
COPY modules modules
COPY print print
COPY \
    LICENSE \
    README.md \
    ./

CMD ["pm2-docker", "./loopback/server/server.js"]