23 lines
657 B
Docker
23 lines
657 B
Docker
# syntax=docker/dockerfile:1.4
|
|
|
|
FROM --platform=$BUILDPLATFORM oven/bun:1.3.14-alpine AS deps
|
|
WORKDIR /app
|
|
COPY package.json bun.lock ./
|
|
RUN --mount=type=cache,target=/root/.bun bun install --frozen-lockfile
|
|
|
|
FROM --platform=$BUILDPLATFORM oven/bun:1.3.14-alpine AS builder
|
|
WORKDIR /app
|
|
COPY --from=deps /app/node_modules ./node_modules
|
|
COPY . .
|
|
RUN bun run build
|
|
|
|
FROM --platform=#PLATFORM oven/bun:1.3.14-alpine AS runner
|
|
WORKDIR /app
|
|
COPY --from=builder /app/build ./build
|
|
COPY --from=builder /app/package.json ./package.json
|
|
COPY --from=builder /app/node_modules ./node_modules
|
|
ENV HOST=0.0.0.0
|
|
ENV PORT=#PORT
|
|
EXPOSE #PORT
|
|
CMD ["bun", "build/index.js"]
|