I'll improve the docker build eventually, so I'll keep the planned improvs here. But for now it might be better to use the bigger multistage docker file. # Use the official Bun image FROM oven/bun:1 AS base WORKDIR /usr/src/app # Install dependencies for both backend and frontend COPY backend/package.json backend/bun.lockb frontend/package.json frontend/bun.lockb /usr/src/app/ RUN bun install --production --cwd backend && \ bun install --production --cwd frontend # Build the frontend project COPY frontend/ /usr/src/app/frontend RUN bun run --cwd frontend build # Prepare for final release FROM oven/bun:1 AS release WORKDIR /usr/src/app # Copy production dependencies COPY --from=base /usr/src/app/backend/node_modules backend/node_modules COPY --from=base /usr/src/app/frontend/node_modules frontend/node_modules # Copy backend source code COPY backend/ backend/ # Copy the built frontend assets into the backend public directory COPY --from=base /usr/src/app/frontend/dist backend/public # Set the entrypoint to run the backend server USER bun EXPOSE 3000/tcp ENTRYPOINT [ "bun", "run", "backend/src/server.ts" ]