FROM node:16 # Create app directory WORKDIR /usr/src/app # Export static site into lifetracker-server COPY lifetracker-vue/ ./ WORKDIR /usr/src/app/lifetracker-vue RUN npm install RUN npm run build-only COPY lifetracker-server/src/dist /usr/src/app/lifetracker-server/src/ WORKDIR /usr/src/app/lifetracker-server # Install app dependencies # A wildcard is used to ensure both package.json AND package-lock.json are copied # where available (npm@5+) COPY lifetracker-server/ ./ RUN npm install # If you are building your code for production # RUN npm ci --omit=dev WORKDIR /usr/src/app/lifetracker-server EXPOSE 8081 CMD [ "npm", "start" ]