19 lines
594 B
Docker
19 lines
594 B
Docker
# Use the official lightweight Node.js 12 image.
|
|
# https://hub.docker.com/_/node
|
|
FROM node:12-alpine
|
|
|
|
ARG PORT=3000
|
|
ENV PORT=$PORT
|
|
# Create and change to the app directory.
|
|
WORKDIR /usr/src/app
|
|
# Copy application dependency manifests to the container image.
|
|
# A wildcard is used to ensure both package.json AND package-lock.json are copied.
|
|
# Copying this separately prevents re-running npm install on every code change.
|
|
COPY / ./
|
|
# Install dependencies.
|
|
RUN npm install
|
|
# Compile to production
|
|
RUN npm run build
|
|
EXPOSE ${PORT}
|
|
# Run the web service on container startup.
|
|
CMD [ "npm", "start" ] |