Skip to content
Snippets Groups Projects
Dockerfile 1.36 KiB
Newer Older
  • Learn to ignore specific revisions
  • Jérôme POIRIER's avatar
    Jérôme POIRIER committed
    # *********************************************************************************************
    # * BUILDER BUILDER BUILDER BUILDER BUILDER BUILDER BUILDER BUILDER BUILDER BUILDER BUILDER B *
    # * BUILDER BUILDER BUILDER BUILDER BUILDER BUILDER BUILDER BUILDER BUILDER BUILDER BUILDER B *
    # *********************************************************************************************
    
    ARG DEPENDENCY_PROXY=
    
    FROM ${DEPENDENCY_PROXY}node:22.1-alpine AS builder
    
    Jérôme POIRIER's avatar
    Jérôme POIRIER committed
    
    WORKDIR /app
    
    COPY . /app
    COPY package.json /app/package.json
    
    RUN npm install \
        && npm run build \
        && npm i ts-node \
        && npm prune --production
    
    # *********************************************************************************************
    # * PROD PROD PROD PROD PROD PROD PROD PROD PROD PROD PROD PROD PROD PROD PROD PROD PROD PROD *
    # * PROD PROD PROD PROD PROD PROD PROD PROD PROD PROD PROD PROD PROD PROD PROD PROD PROD PROD *
    # *********************************************************************************************
    
    ARG DEPENDENCY_PROXY=
    
    FROM ${DEPENDENCY_PROXY}node:22.1-alpine
    
    Jérôme POIRIER's avatar
    Jérôme POIRIER committed
    
    
    # Sets timezone
    RUN apk add --no-cache tzdata
    ENV TZ=Europe/Paris
    
    Jérôme POIRIER's avatar
    Jérôme POIRIER committed
    
    USER node
    
    WORKDIR /home/node
    
    COPY --from=builder /app/package*.json /home/node/
    COPY --from=builder /app/node_modules/ /home/node/node_modules/
    COPY --from=builder /app/dist/ /home/node/dist/
    
    EXPOSE 9100
    
    CMD ["node", "--trace-warnings", "dist/main.js"]