diff --git a/apps/web/Dockerfile b/apps/web/Dockerfile new file mode 100644 index 0000000..f4293da --- /dev/null +++ b/apps/web/Dockerfile @@ -0,0 +1,23 @@ +# C0PY Web (Next.js) +FROM node:22-alpine +WORKDIR /app + +RUN corepack enable && corepack prepare pnpm@9.15.9 --activate + +COPY package.json pnpm-workspace.yaml pnpm-lock.yaml ./ +COPY packages ./packages +COPY apps ./apps + +RUN apk add --no-cache wget && pnpm install --frozen-lockfile && pnpm --filter @siax/c0py-web build + +ENV NODE_ENV=production +ENV PORT=3000 +ENV HOSTNAME=0.0.0.0 +ENV NEXT_TELEMETRY_DISABLED=1 + +EXPOSE 3000 + +HEALTHCHECK --interval=30s --timeout=5s --start-period=15s --retries=3 \ + CMD wget -qO- http://127.0.0.1:3000/ >/dev/null 2>&1 || exit 1 + +CMD ["pnpm", "--filter", "@siax/c0py-web", "start"]