FROM node:22-slim AS build WORKDIR /app COPY package.json ./ RUN npm install COPY . . RUN npx vite build FROM oven/bun:1 RUN apt-get update && apt-get install -y --no-install-recommends ffmpeg && rm -rf /var/lib/apt/lists/* WORKDIR /app COPY package.json bun.lock* ./ RUN bun install --frozen-lockfile --production COPY --from=build /app/dist/ ./dist/ COPY --from=build /app/server/ ./server/ EXPOSE 3000 ENV DATA_DIR=/data/ ENV PORT=3000 VOLUME ["/data/"] CMD ["bun", "run", "server/index.tsx"]