FROM node:alpine as node-modules
WORKDIR /usr/src/app
COPY package.json .
COPY package-lock.json .
RUN npm install
FROM debian:testing-slim
RUN apt-get update \
&& apt-get -y install \
fonts-roboto \
inkscape \
nodejs \
openscad \
pstoedit \
python3 \
python3-pip \
&& rm -rf /var/lib/apt/lists
COPY --from=node-modules /usr/src/app/node_modules node_modules
COPY requirements.txt .
RUN pip3 install --no-cache-dir -r requirements.txt
RUN mkdir static
COPY . .
ENTRYPOINT ["gunicorn", "-w", "4", "-b", "0.0.0.0:8000", "server:app"]
EXPOSE 8000