# syntax=docker/dockerfile:1.4 FROM rust:latest AS builder WORKDIR /app # Configuration de git pour utiliser SSH RUN mkdir -p /root/.ssh && \ ssh-keyscan git.4nkweb.com >> /root/.ssh/known_hosts # Copie des fichiers de sdk_relay COPY sdk_relay/Cargo.toml sdk_relay/Cargo.lock sdk_relay/ COPY sdk_relay/src sdk_relay/src/ # Build avec support SSH pour récupérer les dépendances WORKDIR /app/sdk_relay RUN --mount=type=ssh cargo build --release # ---- image finale ---- FROM debian:bookworm-slim RUN apt-get update && apt-get install -y ca-certificates strace # Créer l'utilisateur bitcoin RUN useradd -m -d /home/bitcoin -u 1000 bitcoin COPY --from=builder /app/sdk_relay/target/release/sdk_relay /usr/local/bin/sdk_relay # Configuration via build arg ARG CONF RUN echo "$CONF" > /home/bitcoin/.conf && \ chown bitcoin:bitcoin /home/bitcoin/.conf # Créer le répertoire .4nk avec les bonnes permissions RUN mkdir -p /home/bitcoin/.4nk && \ chown -R bitcoin:bitcoin /home/bitcoin/.4nk && \ chmod 755 /home/bitcoin/.4nk WORKDIR /home/bitcoin USER bitcoin ENV HOME=/home/bitcoin VOLUME ["/home/bitcoin/.4nk"] VOLUME ["/home/bitcoin/.bitcoin"] EXPOSE 8090 8091 ENTRYPOINT ["sdk_relay", "--config", ".conf"]