Files
watcheragent/Dockerfile.linux
2025-08-04 19:03:30 +02:00

39 lines
1.0 KiB
Docker

# Build stage for Linux
from rust:latest as linux-builder
# Install dependencies
run apt-get update && \
apt-get install -y apt-transport-https && \
apt-get install -y \
libssl-dev \
pkg-config \
&& rm -rf /var/lib/apt/lists/*
workdir /app
copy ./WatcherAgent/ .
# Build for Linux
run cargo build --release --target x86_64-unknown-linux-gnu
# Setze Berechtigungen für das Binary
run chmod +x /app/target/x86_64-unknown-linux-gnu/release/$BINARY_NAME
# Final Linux image
from debian:bullseye-slim
run apt-get update && \
apt-get install -y apt-transport-https && \
apt-get install -y \
libssl-dev \
&& rm -rf /var/lib/apt/lists/*
# Make binary name configurable
arg BINARY_NAME
env BINARY_NAME=${BINARY_NAME:-WatcherAgent}
copy --from=linux-builder /app/target/x86_64-unknown-linux-gnu/release/$BINARY_NAME /usr/local/bin/
# Health check
healthcheck --interval=30s --timeout=3s \
cmd /usr/local/bin/$BINARY_NAME healthcheck || exit 1
ENTRYPOINT ["/bin/sh", "-c", "/usr/local/bin/${BINARY_NAME}"]