Nothing in the image ran it: Caddy is Go, and there has been no healthcheck since #218. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
17 lines
629 B
Docker
17 lines
629 B
Docker
# ipx-web (#203): the frontend, built from web/ and served by Caddy, which passes the API to ipx.
|
|
# Built from the repo's root: docker buildx build -f Dockerfile.web .
|
|
FROM node:22-slim AS build
|
|
WORKDIR /src
|
|
COPY package.json package-lock.json ./
|
|
RUN npm ci --omit=dev
|
|
COPY web ./web
|
|
RUN node web/build.mjs /dist
|
|
|
|
FROM caddy:2
|
|
# caddy:2's Alpine ships curl, which nothing here runs (no healthcheck since #218): out, so a
|
|
# curl flaw such as CVE-2026-92392 has nothing to reach in a container facing the internet (#237).
|
|
RUN apk del --no-cache curl
|
|
COPY web/Caddyfile /etc/caddy/Caddyfile
|
|
COPY --from=build /dist /srv
|
|
EXPOSE 8080
|