feat: adapt klz-2026 high-performance Docker setup and environment handling
All checks were successful
Monorepo Pipeline / 🧪 Quality Assurance (push) Successful in 2m33s
Monorepo Pipeline / 🚀 Release (push) Has been skipped

This commit is contained in:
2026-02-03 11:44:16 +01:00
parent 61f65107f2
commit 653deb7995
7 changed files with 201 additions and 12 deletions

View File

@@ -7,9 +7,15 @@ WORKDIR /app
# Install dependencies based on the preferred package manager
COPY package.json package-lock.json* pnpm-lock.yaml* ./
RUN if [ -f pnpm-lock.yaml ]; then corepack enable pnpm && pnpm i --frozen-lockfile; \
elif [ -f package-lock.json ]; then npm ci; \
else npm i; fi
RUN if [ -f pnpm-lock.yaml ]; then \
corepack enable pnpm && \
pnpm config set store-dir /root/.local/share/pnpm/store/v3 && \
pnpm i --frozen-lockfile; \
elif [ -f package-lock.json ]; then \
npm ci; \
else \
npm i; \
fi
# Rebuild the source code only when needed
FROM base AS builder
@@ -24,14 +30,22 @@ ENV NEXT_TELEMETRY_DISABLED=1
ARG NEXT_PUBLIC_BASE_URL
ARG NEXT_PUBLIC_UMAMI_WEBSITE_ID
ARG NEXT_PUBLIC_UMAMI_SCRIPT_URL
ARG NEXT_PUBLIC_TARGET
ARG DIRECTUS_URL
ENV NEXT_PUBLIC_BASE_URL=$NEXT_PUBLIC_BASE_URL
ENV NEXT_PUBLIC_UMAMI_WEBSITE_ID=$NEXT_PUBLIC_UMAMI_WEBSITE_ID
ENV NEXT_PUBLIC_UMAMI_SCRIPT_URL=$NEXT_PUBLIC_UMAMI_SCRIPT_URL
ENV NEXT_PUBLIC_TARGET=$NEXT_PUBLIC_TARGET
ENV DIRECTUS_URL=$DIRECTUS_URL
# Build the application
RUN if [ -f pnpm-lock.yaml ]; then corepack enable pnpm && pnpm run build; \
else npm run build; fi
RUN if [ -f pnpm-lock.yaml ]; then \
corepack enable pnpm && \
pnpm run build; \
else \
npm run build; \
fi
# Production image, copy all the files and run next
FROM base AS runner