diff --git a/Dockerfile b/Dockerfile index 8380370..c1a78da 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,12 +2,19 @@ FROM node:18-alpine WORKDIR /app -COPY package*.json ./ +# Install curl for healthcheck +RUN apk add --no-cache curl +# Copy package files first for layer caching +COPY package*.json ./ RUN npm install --production +# Copy app code (changes more often — below the cached layer) COPY . . EXPOSE 3000 +HEALTHCHECK --interval=10s --timeout=3s --start-period=5s --retries=2 \ + CMD curl -f http://localhost:3000/health || exit 1 + CMD ["node", "server.js"]