# DataHaven Operator Image FROM debian:stable-slim LABEL version="0.4.0" LABEL description="DataHaven Node - Release Build" LABEL maintainer="steve@moonsonglabs.com" ARG BINARY_PATH=./target/x86_64-unknown-linux-gnu/release/datahaven-node # Install CA certificates and libpq5 for the release build RUN apt-get update && \ apt-get install -y --no-install-recommends \ libpq5 \ ca-certificates && \ update-ca-certificates && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* # Create datahaven user and directories RUN useradd -m -u 1001 -U -s /bin/sh -d /datahaven datahaven && \ mkdir -p /datahaven/.local/share && \ chown -R datahaven:datahaven /datahaven/.local/share USER datahaven # Copy pre-built binary COPY --chown=datahaven:datahaven $BINARY_PATH /usr/local/bin # Make binary executable RUN chmod uog+x /usr/local/bin/datahaven-node # Expose ports # 30333: p2p networking # 9944: WebSocket/RPC # 9615: Prometheus metrics EXPOSE 30333 9944 9615 ENTRYPOINT ["datahaven-node"]