Isolate server Docker build from desktop deps

This commit is contained in:
ciat-777
2026-03-21 01:09:50 +08:00
parent 89282093a9
commit 0574fa93b3
2 changed files with 9 additions and 2 deletions
+2 -2
View File
@@ -10,10 +10,10 @@ RUN apt-get update \
ENV PYTHON=/usr/bin/python3 ENV PYTHON=/usr/bin/python3
COPY package.json package-lock.json ./ COPY package.json package-lock.json ./
RUN --mount=type=cache,target=/root/.npm npm ci --no-audit --no-fund RUN --mount=type=cache,target=/root/.npm npm ci --omit=peer --no-audit --no-fund
COPY . . COPY . .
RUN npm run build RUN npm run build:web && npm run build:server
RUN --mount=type=cache,target=/root/.npm npm prune --omit=dev --no-audit --no-fund RUN --mount=type=cache,target=/root/.npm npm prune --omit=dev --no-audit --no-fund
FROM node:22-bookworm-slim FROM node:22-bookworm-slim
+7
View File
@@ -31,4 +31,11 @@ describe('docker workflows', () => {
expect(dockerfile).toContain('FROM node:22-bookworm-slim AS builder'); expect(dockerfile).toContain('FROM node:22-bookworm-slim AS builder');
expect(dockerfile).toContain('FROM node:22-bookworm-slim'); expect(dockerfile).toContain('FROM node:22-bookworm-slim');
}); });
it('keeps server docker builds isolated from desktop packaging dependencies', () => {
const dockerfile = readFileSync(resolve(process.cwd(), 'docker/Dockerfile'), 'utf8');
expect(dockerfile).toContain('npm ci --omit=peer --no-audit --no-fund');
expect(dockerfile).toContain('RUN npm run build:web && npm run build:server');
});
}); });