All checks were successful
Build and Deploy / build-deploy (push) Successful in 29s
32 lines
874 B
Docker
32 lines
874 B
Docker
FROM oven/bun:latest AS base
|
|
WORKDIR /app
|
|
|
|
FROM base AS deps
|
|
COPY package.json bun.lockb ./
|
|
COPY packages/fe/package.json packages/fe/
|
|
COPY packages/be/package.json packages/be/
|
|
RUN bun install --frozen-lockfile
|
|
|
|
FROM deps AS fe-build
|
|
COPY packages/fe packages/fe
|
|
COPY packages/be/src packages/be/src
|
|
COPY tsconfig.json .
|
|
ARG PUBLIC_WS_URL
|
|
ARG PUBLIC_BOX_DRAWING_CHARS
|
|
ENV PUBLIC_WS_URL=$PUBLIC_WS_URL
|
|
ENV PUBLIC_BOX_DRAWING_CHARS=$PUBLIC_BOX_DRAWING_CHARS
|
|
RUN bun run --filter fe build
|
|
|
|
FROM base AS frontend
|
|
WORKDIR /app/packages/fe
|
|
COPY --from=deps /app/node_modules /app/node_modules
|
|
COPY --from=fe-build /app/packages/fe/dist ./dist
|
|
COPY packages/fe/package.json packages/fe/vite.config.ts ./
|
|
CMD ["bun", "run", "start"]
|
|
|
|
FROM base AS backend
|
|
WORKDIR /app/packages/be
|
|
COPY --from=deps /app/node_modules /app/node_modules
|
|
COPY packages/be ./
|
|
CMD ["bun", "run", "start"]
|