ARG CADDY_VERSION=2.10.2 ARG CADDYFILE=deploy/caddy/Caddyfile FROM node:22-alpine AS frontend WORKDIR /app COPY frontend/package.json frontend/package-lock.json ./ RUN npm ci COPY frontend/ ./ RUN npm run build FROM caddy:${CADDY_VERSION}-builder AS builder RUN xcaddy build \ --with github.com/mholt/caddy-ratelimit@5625512f24f6f59d6f64fb3aafe5eecff0b286db FROM caddy:${CADDY_VERSION}-alpine ARG CADDYFILE COPY --from=builder /usr/bin/caddy /usr/bin/caddy COPY ${CADDYFILE} /etc/caddy/Caddyfile COPY --from=frontend /app/dist/ /srv/