wrolpi/docker/app/Dockerfile

21 lines
500 B
Docker

# base image
FROM node:18-bullseye
WORKDIR /app
ENV PATH /app/node_modules/.bin:$PATH
# install and cache app dependencies
USER root
RUN npm install -g serve
COPY app/public /app/public
COPY app/src /app/src
COPY app/package.json app/package-lock.json /app/
# "node" user will run the app after build.
RUN chown -R node:node /app
# Install dependencies as "node", this is to avoid changing ownership of many files.
USER node
RUN npm install
# Run the production build
CMD ["npm", "run", "start"]