Files
andon/Dockerfile
Julien Calixte 4b03f0e885 chore(docker): remove container healthcheck
Coolify performs its own liveness probe, so the in-image HEALTHCHECK is
redundant.
2026-05-28 17:26:50 +02:00

27 lines
930 B
Docker

# syntax=docker/dockerfile:1
# --- Build stage: install deps and produce the Nuxt/Nitro output ---
FROM node:24-alpine AS build
RUN corepack enable
WORKDIR /app
COPY . .
# Cache the pnpm store across builds so dependencies aren't re-downloaded on
# every source change. Source is copied first because the root `postinstall`
# (nuxt prepare) needs it.
RUN --mount=type=cache,id=pnpm-store,target=/root/.local/share/pnpm/store \
pnpm install --frozen-lockfile
RUN pnpm build
# --- Runtime stage: minimal image running the built server ---
FROM node:24-alpine AS runtime
WORKDIR /app
ENV NODE_ENV=production \
PORT=3000 \
HOST=0.0.0.0
# Built server plus the migration SQL, which a Nitro plugin applies on boot.
COPY --from=build --chown=node:node /app/.output ./.output
COPY --from=build --chown=node:node /app/server/db/migrations ./server/db/migrations
USER node
EXPOSE 3000
CMD ["node", ".output/server/index.mjs"]