Two AI components were importing from ../../../../packages/ai/src using relative paths that escape the workspace root. This worked locally because all packages are siblings on disk, but failed in Docker where Dockerfile.web only copies apps/web, packages/database, and packages/shared into the build context — packages/ai never made it in. Changes: - Add @tasks/ai as a workspace dependency in apps/web/package.json - Switch both imports (command-palette.tsx, ai-block.tsx) to "@tasks/ai" - Add @tasks/ai to transpilePackages in next.config.ts and the docker variant - Copy packages/ai into the Docker build context (Dockerfile.web) - Refresh pnpm-lock.yaml for the new workspace edge Verified locally: web builds compile cleanly past the previously failing "Module not found" errors. (Local final step hits an unrelated ENOSPC on the dev disk; Coolify's volume has plenty of headroom.) Made-with: Cursor
19 lines
540 B
TypeScript
19 lines
540 B
TypeScript
import type { NextConfig } from "next";
|
|
import path from "path";
|
|
|
|
/**
|
|
* Production Docker build: enables `output: "standalone"` and correct file tracing
|
|
* for the pnpm monorepo. Copied over `apps/web/next.config.ts` during `docker build`.
|
|
*/
|
|
const nextConfig: NextConfig = {
|
|
output: "standalone",
|
|
transpilePackages: ["@tasks/ai", "@tasks/database", "@tasks/shared"],
|
|
outputFileTracingRoot: path.join(__dirname, "../.."),
|
|
experimental: {
|
|
serverActions: {
|
|
bodySizeLimit: "2mb",
|
|
},
|
|
},
|
|
};
|
|
|
|
export default nextConfig;
|