FROM node:10 RUN mkdir -p /usr/src/app WORKDIR /usr/src/app # Build backend code. COPY . /usr/src/app RUN npm install && \ npm cache clean --force && \ npm run build # Build frontend code using a fixed hash commit. ENV FRONTEND_COMMIT_HASH f6c2127bdaea4f52a42d06f0c3d0c6b7eda21f3d RUN mkdir -p /usr/src/app-frontend && cd /usr/src/app-frontend && \ git clone https://github.com/githubsaturn/caprover-frontend.git && \ cd caprover-frontend && \ git reset --hard ${FRONTEND_COMMIT_HASH} && \ npm install && npm cache clean --force && \ npm run build && \ mv ./build ../../app/dist-frontend && \ cd / && \ rm -rf /usr/src/app-frontend ENV NODE_ENV production ENV PORT 3000 EXPOSE 3000 CMD ["npm" , "start"]