22 lines
No EOL
532 B
Docker
22 lines
No EOL
532 B
Docker
# Dockerfile for the Node.js checkpoint service
|
|
FROM node:18-alpine
|
|
|
|
# Set working directory
|
|
WORKDIR /app
|
|
|
|
# Copy package files, config script, and install dependencies
|
|
COPY package.json package-lock.json esbuild.config.js ./
|
|
# Install all dependencies, build with esbuild, then remove devDeps
|
|
RUN npm ci && npm run build && npm prune --production
|
|
|
|
# Copy application source
|
|
COPY . .
|
|
|
|
# Expose the application port
|
|
EXPOSE 3000
|
|
|
|
# Set NODE_ENV to production
|
|
ENV NODE_ENV=production
|
|
|
|
# Run the application
|
|
CMD ["npm", "run", "daemon"] |