Files
netbird-docs/docker/Dockerfile
mlsmaycon 98751bc1f4 Move the documentation repository to a public repo
Added a LICENSE and documentation on how to contribute

Updated CI/CD to use the root level code
2022-06-20 19:05:25 +02:00

30 lines
644 B
Docker

FROM node:16-alpine
# Set working directory
WORKDIR /usr/app
# Install PM2 globally
RUN npm install --global pm2
# Copy package.json and package-lock.json before other files
# Utilise Docker cache to save re-installing dependencies if unchanged
COPY ./package*.json ./
# Install dependencies
RUN npm install --production
# Copy all files
COPY ./ ./
# Build app
RUN npm run build
# Expose the listening port
EXPOSE 3000
# Run container as non-root (unprivileged) user
# The node user is provided in the Node.js Alpine base image
USER node
# Run npm start script with PM2 when container starts
CMD [ "pm2-runtime", "npm", "--", "start" ]