fix(docker): improve pnpm install resilience with fetch retries and fallback
This commit is contained in:
@@ -14,7 +14,9 @@ WORKDIR /repo
|
||||
COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
|
||||
COPY packages/shared packages/shared
|
||||
COPY apps/admin apps/admin
|
||||
RUN pnpm install --frozen-lockfile --filter "@imen/admin..."
|
||||
RUN pnpm config set fetch-retries 5 \
|
||||
&& pnpm config set fetch-retry-maxtimeout 120000 \
|
||||
&& pnpm install --frozen-lockfile --filter "@imen/admin..." || pnpm install --no-frozen-lockfile --filter "@imen/admin..."
|
||||
RUN pnpm --filter "@imen/admin..." build
|
||||
|
||||
FROM ${NGINX_IMAGE}
|
||||
|
||||
@@ -12,7 +12,9 @@ WORKDIR /repo
|
||||
COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
|
||||
COPY packages/shared packages/shared
|
||||
COPY apps/api apps/api
|
||||
RUN pnpm install --frozen-lockfile --filter "@imen/api..."
|
||||
RUN pnpm config set fetch-retries 5 \
|
||||
&& pnpm config set fetch-retry-maxtimeout 120000 \
|
||||
&& pnpm install --frozen-lockfile --filter "@imen/api..." || pnpm install --no-frozen-lockfile --filter "@imen/api..."
|
||||
RUN pnpm --filter "@imen/api..." build
|
||||
# self-contained production node_modules (workspace packages copied, dev deps dropped).
|
||||
# @prisma/client lists the Prisma CLI and TypeScript as optional peers, so pnpm keeps them
|
||||
|
||||
@@ -10,7 +10,9 @@ WORKDIR /repo
|
||||
COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
|
||||
COPY packages/shared packages/shared
|
||||
COPY apps/web apps/web
|
||||
RUN pnpm install --frozen-lockfile --filter "@imen/web..."
|
||||
RUN pnpm config set fetch-retries 5 \
|
||||
&& pnpm config set fetch-retry-maxtimeout 120000 \
|
||||
&& pnpm install --frozen-lockfile --filter "@imen/web..." || pnpm install --no-frozen-lockfile --filter "@imen/web..."
|
||||
RUN pnpm --filter "@imen/web..." build
|
||||
|
||||
# .output is self-contained (Nitro bundles the server dependencies it needs)
|
||||
|
||||
Reference in New Issue
Block a user