26 lines
547 B
Docker
26 lines
547 B
Docker
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/
|