26 lines
460 B
Docker
26 lines
460 B
Docker
# Use the official Node.js image.
|
|
FROM node:22-slim
|
|
|
|
# Create and change to the app directory.
|
|
WORKDIR /usr/src/app
|
|
|
|
# Copy package.json and pnpm-lock.yaml
|
|
COPY package.json pnpm-lock.yaml ./
|
|
|
|
# Install pnpm
|
|
RUN npm install -g pnpm
|
|
|
|
# Install dependencies
|
|
RUN pnpm install
|
|
|
|
# Copy the rest of the application's source code.
|
|
COPY . .
|
|
|
|
# Build the project
|
|
RUN pnpm run build
|
|
|
|
# Expose the port the app runs on
|
|
EXPOSE 3000
|
|
|
|
# Serve the app
|
|
CMD [ "pnpm", "start" ] |