2021-01-17 14:29:27 -05:00
|
|
|
ARG PORT=3000
|
|
|
|
ENV PORT=$PORT
|
2021-01-06 10:48:08 -05:00
|
|
|
# Use the official lightweight Node.js 12 image.
|
|
|
|
# https://hub.docker.com/_/node
|
|
|
|
FROM node:12-alpine
|
|
|
|
# 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
|
2021-01-17 14:29:27 -05:00
|
|
|
EXPOSE ${PORT}
|
2021-01-06 10:48:08 -05:00
|
|
|
# Run the web service on container startup.
|
|
|
|
CMD [ "npm", "start" ]
|