2026-04-21 16:41:54 +05:30
|
|
|
ARG NODE_VERSION=24.15.0
|
2026-04-20 14:39:29 +05:30
|
|
|
FROM node:${NODE_VERSION}-alpine
|
|
|
|
|
|
|
|
|
|
WORKDIR /usr/src/app
|
|
|
|
|
|
|
|
|
|
# Use cache mounts for faster installs
|
|
|
|
|
RUN --mount=type=bind,source=backend/package.json,target=package.json \
|
|
|
|
|
--mount=type=bind,source=backend/package-lock.json,target=package-lock.json \
|
|
|
|
|
--mount=type=cache,target=/root/.npm \
|
|
|
|
|
npm ci
|
|
|
|
|
|
|
|
|
|
# Copy the backend source
|
|
|
|
|
COPY ./backend .
|
|
|
|
|
|
|
|
|
|
# Copy and setup entrypoint
|
|
|
|
|
COPY ./docker/entrypoint.sh /usr/local/bin/entrypoint.sh
|
|
|
|
|
RUN chmod +x /usr/local/bin/entrypoint.sh
|
|
|
|
|
|
|
|
|
|
EXPOSE 5000
|
|
|
|
|
|
|
|
|
|
ENTRYPOINT [ "entrypoint.sh" ]
|
|
|
|
|
|
|
|
|
|
# This '$@' will be replaced by the CMD
|
2026-04-20 16:05:38 +05:30
|
|
|
CMD ["npm", "start"]
|