FROM node:latest

WORKDIR /usr/src/

COPY mojo_app/package.json .
COPY mojo_app/package-lock.json .
RUN npm install

FROM perl:latest

WORKDIR /opt/app/

COPY cpanfile .
COPY cpanfile.snapshot .
COPY mojo_app ./mojo_app/

RUN cpanm Carton && carton install

WORKDIR /opt/app/mojo_app/
COPY --from=0 /usr/src/ .

EXPOSE 3000

ENTRYPOINT ["carton", "exec", "--", "morbo", "script/mojo_app"]
