# Extract graphviz and dependencies
FROM golang:1.24-bookworm AS builder
COPY . /go/src/pprofweb/
WORKDIR /go/src/pprofweb
RUN go build -o server ./pkg/webserver

FROM debian:12 AS run
RUN apt-get update && apt-get install -y graphviz libgvc6 libcgraph6 libltdl7 libxdot4 libcdt5 libpathplan4 libexpat1 zlib1g

COPY --from=builder /go/src/pprofweb/server /pprofweb
# Configure dot plugins
RUN ["dot", "-c"]

WORKDIR /
EXPOSE 7443
ENTRYPOINT ["/pprofweb"]