mirror of
https://github.com/seriousm4x/UpSnap.git
synced 2026-03-31 06:24:11 -04:00
* update ping privileged/unprivileged logic, add entrypoint Signed-off-by: invario <67800603+invario@users.noreply.github.com> * Removed entrypoint script, code in GO instead to raise NET_RAW cap Signed-off-by: invario <67800603+invario@users.noreply.github.com> * Rewritten to only split pingdevice func into separate GO files Signed-off-by: invario <67800603+invario@users.noreply.github.com> * remove runtime check * readme: cap_net_raw=+p * clear up * readme: clearify linux only * set `privileged = false` on darwin --------- Signed-off-by: invario <67800603+invario@users.noreply.github.com> Co-authored-by: Maxi Quoß <maxi@quoss.org>
27 lines
975 B
Docker
27 lines
975 B
Docker
FROM alpine:3 AS downloader
|
|
ARG TARGETOS
|
|
ARG TARGETARCH
|
|
ARG TARGETVARIANT
|
|
ARG VERSION
|
|
ENV BUILDX_ARCH="${TARGETOS:-linux}_${TARGETARCH:-amd64}${TARGETVARIANT}"
|
|
WORKDIR /app
|
|
RUN wget https://github.com/seriousm4x/UpSnap/releases/download/${VERSION}/UpSnap_${VERSION}_${BUILDX_ARCH}.zip &&\
|
|
unzip UpSnap_${VERSION}_${BUILDX_ARCH}.zip &&\
|
|
rm -f UpSnap_${VERSION}_${BUILDX_ARCH}.zip &&\
|
|
chmod +x upsnap &&\
|
|
apk update &&\
|
|
apk add --no-cache libcap &&\
|
|
setcap 'cap_net_raw=+p' ./upsnap
|
|
|
|
FROM alpine:3
|
|
ARG UPSNAP_HTTP_LISTEN=0.0.0.0:8090
|
|
ENV UPSNAP_HTTP_LISTEN=${UPSNAP_HTTP_LISTEN}
|
|
RUN apk update &&\
|
|
apk add --no-cache tzdata ca-certificates nmap samba samba-common-tools openssh sshpass curl &&\
|
|
rm -rf /var/cache/apk/*
|
|
WORKDIR /app
|
|
COPY --from=downloader /app/upsnap upsnap
|
|
HEALTHCHECK --interval=10s \
|
|
CMD curl -fs "http://${UPSNAP_HTTP_LISTEN}/api/health" || exit 1
|
|
CMD ["serve","--http","${UPSNAP_HTTP_LISTEN}"]
|
|
ENTRYPOINT ["/app/upsnap"] |