This repository has no description
969 B
26 lines
1FROM alpine:3.22 AS source
2ARG HYDRANT_REPO=https://tangled.org/ptr.pet/hydrant.git
3ARG HYDRANT_REF=main
4RUN apk add --no-cache git \
5 && git clone --depth 1 --branch "$HYDRANT_REF" "$HYDRANT_REPO" /hydrant
6
7FROM rust:1.96-slim-trixie AS builder
8RUN apt-get update && apt-get install -y --no-install-recommends \
9 ca-certificates pkg-config perl make cmake clang mold \
10 && rm -rf /var/lib/apt/lists/*
11ENV RUSTFLAGS="-C linker=clang -C link-arg=-fuse-ld=mold"
12WORKDIR /src
13COPY --from=source /hydrant ./
14# remove hydrants wild linker config
15RUN rm -f .cargo/config.toml
16RUN cargo build --release --bin hydrant
17RUN strip target/release/hydrant
18
19FROM debian:trixie-slim
20RUN apt-get update && apt-get install -y --no-install-recommends \
21 ca-certificates \
22 && rm -rf /var/lib/apt/lists/*
23COPY --from=builder /src/target/release/hydrant /usr/local/bin/hydrant
24ENV HYDRANT_DATABASE_PATH=/var/lib/hydrant
25EXPOSE 3000
26ENTRYPOINT ["/usr/local/bin/hydrant"]