You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
motw-tracker/Dockerfile

20 lines
741 B

FROM node:latest AS build
RUN apt-get update && apt-get install -y --no-install-recommends dumb-init
WORKDIR /usr/src/app
COPY package*.json .prettierrc .eslintrc.cjs tsconfig.json /usr/src/app/
COPY src /usr/src/app/src/
RUN npm ci
RUN npm run lint
RUN npm run build
RUN npm ci --production
FROM node:16.17.0-bullseye-slim
ENV NODE_ENV production
COPY --from=build /usr/bin/dumb-init /usr/bin/dumb-init
USER node
WORKDIR /usr/src/app
COPY --chown=node:node --from=build /usr/src/app/node_modules /usr/src/app/node_modules
COPY --chown=node:node --from=build /usr/src/app/dist /usr/src/app/dist
COPY --chown=node:node --from=build /usr/src/app/package.json /usr/src/app/package.json
CMD ["dumb-init", "node", "/usr/src/app/dist/index.js"]