diff --git a/Dockerfile b/Dockerfile index d72c6bb..3582ca4 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,5 @@ # --- Stage 1: Build --- -FROM node:20-alpine as builder +FROM node:24-alpine as builder WORKDIR /app @@ -18,8 +18,11 @@ ARG JOBS_API_TOKEN COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./ COPY packages packages COPY tooling tooling + +RUN pnpm install --frozen-lockfile + COPY .env .env -COPY .env.staging .env.staging +#COPY .env.staging .env.staging RUN echo "# PRODUCTION BUILD ENVIRONMENT VARIABLES" > .env.production && \ echo "" >> .env.production && \ @@ -39,11 +42,10 @@ RUN echo "# PRODUCTION BUILD ENVIRONMENT VARIABLES" > .env.production && \ echo "NEXT_PUBLIC_MONTONIO_ACCESS_KEY=${NEXT_PUBLIC_MONTONIO_ACCESS_KEY}" >> .env.production && \ echo "" >> .env.production && \ echo "# JOBS" >> .env.production && \ - echo "JOBS_API_TOKEN=${JOBS_API_TOKEN}" >> .env.production + echo "JOBS_API_TOKEN=${JOBS_API_TOKEN}" >> .env.local # Load env file and echo a specific variable # RUN dotenv -e .env -- printenv | grep 'SUPABASE' || true -RUN pnpm install --frozen-lockfile COPY . . @@ -59,15 +61,14 @@ RUN set -a \ # --- Stage 2: Runtime --- -FROM node:20-alpine +FROM node:24-alpine ARG APP_ENV=production WORKDIR /app COPY --from=builder /app ./ - -COPY --from=builder /app/.env.local .env.local COPY --from=builder /app/.env.${APP_ENV} .env.production +COPY --from=builder /app/.env.local .env.local RUN npm install -g pnpm@9 \ && pnpm install --prod --frozen-lockfile