FROM node:20-alpine

RUN apk add --no-cache git

WORKDIR /app

COPY package.json ./
RUN npm install --production

RUN git clone --depth 1 https://github.com/genieacs/genieacs-sim.git /app/genieacs-sim

COPY simulator.js /app/genieacs-sim/simulator.js
COPY methods.js /app/genieacs-sim/methods.js
COPY sim-worker.js data-model.csv lab-host.js ./
COPY public ./public
COPY server.js ./

RUN mkdir -p /data

EXPOSE 8080 7548

CMD ["node", "server.js"]
