Last active
April 29, 2020 14:48
-
-
Save vschoener/dcaf7af1c4bafa3a88e42d3ee5781047 to your computer and use it in GitHub Desktop.
Multi Stage docker file example with NODE
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# | |
# Builder stage. | |
# This state compile our TypeScript to get the JavaScript code | |
# | |
FROM node:12.13.0 AS builder | |
WORKDIR /usr/src/app | |
COPY package*.json ./ | |
COPY tsconfig*.json ./ | |
COPY ./src ./src | |
RUN npm ci --quiet && npm run build | |
# | |
# Production stage. | |
# This state compile get back the JavaScript code from builder stage | |
# It will also install the production package only | |
# | |
FROM node:12.13.0-alpine | |
WORKDIR /app | |
ENV NODE_ENV=production | |
COPY package*.json ./ | |
RUN npm ci --quiet --only=production | |
## We just need the build to execute the command | |
COPY --from=builder /usr/src/app/build ./build |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment