containerize app for production

This commit is contained in:
2025-08-15 22:52:11 -04:00
parent ab96d0b0a0
commit 115b21b9da
2 changed files with 48 additions and 0 deletions

View File

@@ -0,0 +1,35 @@
# =====================
# Build Stage
# =====================
FROM oven/bun:1.2.10-alpine AS builder
WORKDIR /app
# Install dependencies
COPY package.json bun.lock ./
RUN bun install --frozen-lockfile
# Copy rest of app
COPY . .
# Build Next.js app
RUN bun run build
# =====================
# Runtime Stage
# =====================
FROM oven/bun:1.2.10-alpine
WORKDIR /app
# Copy only necessary files from builder
COPY --from=builder /app/package.json /app/package.json
COPY --from=builder /app/.next /app/.next
COPY --from=builder /app/public /app/public
COPY --from=builder /app/node_modules /app/node_modules
# Expose port
EXPOSE 3000
# Run in production
CMD ["bun", "run", "start"]