Files
watcheragent/Dockerfile.linux
2025-08-03 21:20:26 +02:00

41 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=WatcherAgent
copy --from=linux-builder /app/target/x86_64-unknown-linux-gnu/release/$BINARY_NAME /usr/local/bin/
# Verify binary works
run /usr/local/bin/$BINARY_NAME --version
# Health check
healthcheck --interval=30s --timeout=3s \
cmd /usr/local/bin/$BINARY_NAME healthcheck || exit 1
entrypoint ["/usr/local/bin/$BINARY_NAME"]