From 0a09df27f43a7e4519e68250cb3601e9894ba01e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ullrich=20Sch=C3=A4fer?= Date: Wed, 25 Mar 2026 01:10:01 +0100 Subject: [PATCH] Fix Docker builds: missing deps + bump actions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Dockerfiles: - Add db package.json to deps stage - Copy full node_modules (including app-level) to runtime - Copy packages/ dir for workspace imports at runtime CD workflow: - docker/login-action v3 → v4 - docker/build-push-action v6 → v7 Co-Authored-By: Claude Opus 4.6 (1M context) --- .github/workflows/cd.yml | 8 ++++---- apps/journal/Dockerfile | 6 ++++-- apps/planner/Dockerfile | 6 ++++-- 3 files changed, 12 insertions(+), 8 deletions(-) diff --git a/.github/workflows/cd.yml b/.github/workflows/cd.yml index 13ce590..f6e1b3e 100644 --- a/.github/workflows/cd.yml +++ b/.github/workflows/cd.yml @@ -21,13 +21,13 @@ jobs: steps: - uses: actions/checkout@v6 - - uses: docker/login-action@v3 + - uses: docker/login-action@v4 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - - uses: docker/build-push-action@v6 + - uses: docker/build-push-action@v7 with: context: . file: apps/${{ matrix.app }}/Dockerfile @@ -45,13 +45,13 @@ jobs: steps: - uses: actions/checkout@v6 - - uses: docker/login-action@v3 + - uses: docker/login-action@v4 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - - uses: docker/build-push-action@v6 + - uses: docker/build-push-action@v7 with: context: docker/brouter push: true diff --git a/apps/journal/Dockerfile b/apps/journal/Dockerfile index b36fc39..ca65b39 100644 --- a/apps/journal/Dockerfile +++ b/apps/journal/Dockerfile @@ -10,18 +10,20 @@ COPY packages/ui/package.json packages/ui/ COPY packages/map/package.json packages/map/ COPY packages/gpx/package.json packages/gpx/ COPY packages/i18n/package.json packages/i18n/ +COPY packages/db/package.json packages/db/ RUN pnpm install --frozen-lockfile FROM base AS build -COPY --from=deps /app/node_modules ./node_modules -COPY --from=deps /app/apps/journal/node_modules ./apps/journal/node_modules +COPY --from=deps /app/ ./ COPY . . RUN pnpm --filter @trails-cool/journal build FROM base AS runtime COPY --from=deps /app/node_modules ./node_modules +COPY --from=deps /app/apps/journal/node_modules ./apps/journal/node_modules COPY --from=build /app/apps/journal/build ./apps/journal/build COPY --from=build /app/apps/journal/package.json ./apps/journal/package.json +COPY --from=build /app/packages ./packages WORKDIR /app/apps/journal EXPOSE 3000 diff --git a/apps/planner/Dockerfile b/apps/planner/Dockerfile index 6ee2002..3167d82 100644 --- a/apps/planner/Dockerfile +++ b/apps/planner/Dockerfile @@ -10,20 +10,22 @@ COPY packages/ui/package.json packages/ui/ COPY packages/map/package.json packages/map/ COPY packages/gpx/package.json packages/gpx/ COPY packages/i18n/package.json packages/i18n/ +COPY packages/db/package.json packages/db/ RUN pnpm install --frozen-lockfile FROM base AS build -COPY --from=deps /app/node_modules ./node_modules -COPY --from=deps /app/apps/planner/node_modules ./apps/planner/node_modules +COPY --from=deps /app/ ./ COPY . . RUN pnpm --filter @trails-cool/planner build FROM base AS runtime COPY --from=deps /app/node_modules ./node_modules +COPY --from=deps /app/apps/planner/node_modules ./apps/planner/node_modules COPY --from=build /app/apps/planner/build ./apps/planner/build COPY --from=build /app/apps/planner/server.ts ./apps/planner/server.ts COPY --from=build /app/apps/planner/app/lib ./apps/planner/app/lib COPY --from=build /app/apps/planner/package.json ./apps/planner/package.json +COPY --from=build /app/packages ./packages WORKDIR /app/apps/planner EXPOSE 3001