33 lines
840 B
Docker
33 lines
840 B
Docker
FROM alpine:3.20 AS code-cloner
|
|
|
|
WORKDIR /src
|
|
RUN apk add --no-cache git
|
|
RUN git clone --depth 1 https://github.com/Revertron/Alfis.git
|
|
|
|
FROM rust:slim-bullseye AS builder
|
|
|
|
RUN apt-get update \
|
|
&& apt-get install -y --no-install-recommends pkg-config libcairo2-dev ca-certificates \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
COPY --from=code-cloner /src/Alfis /src
|
|
WORKDIR /src
|
|
RUN cargo build --release --no-default-features --features="doh"
|
|
|
|
FROM debian:bullseye-slim
|
|
|
|
RUN apt-get update \
|
|
&& apt-get install -y --no-install-recommends ca-certificates libcairo2 \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
COPY --from=builder /src/target/release/alfis /alfis
|
|
COPY --from=builder /src/alfis.toml /storage/alfis.toml
|
|
|
|
EXPOSE 4244/tcp
|
|
EXPOSE 53/tcp
|
|
EXPOSE 53/udp
|
|
|
|
WORKDIR /storage
|
|
VOLUME ["/storage"]
|
|
CMD ["/alfis", "-c", "/storage/alfis.toml"]
|