# Build and serve the Canva side panel app FROM docker.io/library/node:18-slim RUN npm install -g pnpm && \ pnpm config set fetch-retries 5 && \ pnpm config set fetch-retry-mintimeout 20000 && \ pnpm config set fetch-retry-maxtimeout 120000 WORKDIR /app COPY package.json pnpm-lock.yaml ./ RUN pnpm install ARG VITE_API_BASE ENV VITE_API_BASE=${VITE_API_BASE} COPY canva-app/ ./canva-app/ WORKDIR /app/canva-app RUN pnpm install RUN pnpm build RUN npm install -g serve EXPOSE 8080 CMD ["serve", "-s", "dist", "-l", "8080"]