39 lines
591 B
Docker
39 lines
591 B
Docker
FROM docker.io/library/alpine AS build
|
|
|
|
RUN --mount=type=cache,target=/var/cache \
|
|
apk add \
|
|
cargo \
|
|
protoc \
|
|
rust \
|
|
&& :
|
|
|
|
COPY src /src/src
|
|
|
|
COPY Cargo.* /src/
|
|
|
|
WORKDIR /src
|
|
|
|
RUN cargo build --release
|
|
|
|
|
|
FROM docker.io/library/alpine
|
|
|
|
RUN --mount=type=cache,target=/var/cache \
|
|
apk add \
|
|
libgcc \
|
|
&& :
|
|
|
|
COPY --from=build /src/target/release/luci /usr/local/bin/luci
|
|
|
|
COPY dch-root-ca.crt /etc/ssl/certs
|
|
|
|
COPY nsenter.sh /usr/local/libexec/nsenter.sh
|
|
|
|
RUN for cmd in \
|
|
systemctl \
|
|
; do \
|
|
ln -s /usr/local/libexec/nsenter.sh /usr/local/bin/${cmd} \
|
|
; done
|
|
|
|
ENTRYPOINT ["luci"]
|