Skip to content
Snippets Groups Projects
Select Git revision
  • main default
  • v0.0.17
  • v0.0.16
  • v0.0.15
  • v0.0.14
  • v0.0.13
  • v0.0.12
  • v0.0.11
  • v0.0.10
  • v0.0.9
  • v0.0.8
  • v0.0.7
  • v0.0.7-rc1
  • v0.0.6
  • v0.0.5
  • v0.0.4
  • v0.0.3
  • v0.0.2
  • v0.0.1
19 results

Dockerfile

Blame
  • Dockerfile 812 B
    # VERSIONS
    ARG NODE_VERSION=20.10.0
    ARG NPM_VERSION=10.2.5
    
    # --------------> The builder image
    FROM node:$NODE_VERSION AS builder
    ENV NODE_ENV production
    WORKDIR /usr/src/app
    RUN apt-get update && apt-get install -y --no-install-recommends dumb-init
    ARG NPM_TOKEN
    COPY package*.json /usr/src/app/
    RUN echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" > .npmrc && \
       npm install -g npm@$NPM_VERSION && \
       npm ci --omit=dev && \
       rm -f .npmrc
     
    # --------------> The production image
    FROM node:$NODE_VERSION-slim AS production
    ENV NODE_ENV production
    WORKDIR /usr/src/app
    COPY --from=builder /usr/bin/dumb-init /usr/bin/dumb-init
    COPY --chown=node:node --from=builder /usr/src/app/node_modules /usr/src/app/node_modules
    COPY --chown=node:node . /usr/src/app
    USER node
    CMD ["dumb-init", "node", "index.js"]