···11+FROM oven/bun:1.3 AS base
22+WORKDIR /app
33+44+# Install production dependencies
55+FROM base AS deps
66+COPY package.json bun.lock ./
77+RUN bun install --frozen-lockfile --production --ignore-scripts
88+99+# Build client assets (needs devDependencies for vp)
1010+FROM base AS build
1111+COPY package.json bun.lock ./
1212+RUN bun install --frozen-lockfile --ignore-scripts
1313+COPY . .
1414+RUN bun run build
1515+1616+# Runtime
1717+FROM base
1818+COPY . .
1919+COPY --from=deps /app/node_modules ./node_modules
2020+COPY --from=build /app/dist ./dist
2121+2222+EXPOSE 3000
2323+2424+CMD ["sh", "-c", "bun run lib/db/migrate.ts && bun run app/server.ts"]