2024-05-29 12:01:37 +07:00
|
|
|
# syntax=docker/dockerfile:1
|
|
|
|
|
|
|
|
# Comments are provided throughout this file to help you get started.
|
|
|
|
# If you need more help, visit the Dockerfile reference guide at
|
|
|
|
# https://docs.docker.com/go/dockerfile-reference/
|
|
|
|
|
|
|
|
# Want to help us make this template better? Share your feedback here: https://forms.gle/ybq9Krt8jtBL3iCk7
|
|
|
|
|
|
|
|
ARG NODE_VERSION=22.2.0
|
|
|
|
|
|
|
|
FROM node:${NODE_VERSION}-alpine
|
|
|
|
|
|
|
|
# Use production node environment by default.
|
|
|
|
ENV NODE_ENV production
|
|
|
|
|
2024-05-29 12:09:43 +07:00
|
|
|
# Working Directory
|
2024-05-29 12:01:37 +07:00
|
|
|
WORKDIR /usr/src/app
|
|
|
|
|
2024-05-29 12:09:43 +07:00
|
|
|
# Copy package.json and package-lock.json to the working directory
|
|
|
|
COPY package.json package-lock.json ./
|
|
|
|
|
|
|
|
# Install dependencies
|
|
|
|
RUN npm install
|
2024-05-29 12:01:37 +07:00
|
|
|
|
|
|
|
# Run the application as a non-root user.
|
|
|
|
USER node
|
|
|
|
|
|
|
|
# Copy the rest of the source files into the image.
|
|
|
|
COPY . .
|
|
|
|
|
|
|
|
# Run the application.
|
|
|
|
CMD node src/index.js
|