FROM rust:latest AS builder WORKDIR /app # 1) Copie de la dépendance locale d'abord COPY sdk_common sdk_common/ # 2) Copie des fichiers de sdk_relay COPY sdk_relay/Cargo.toml sdk_relay/Cargo.lock sdk_relay/ COPY sdk_relay/src sdk_relay/src/ # 3) Build dans le dossier sdk_relay WORKDIR /app/sdk_relay RUN 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 COPY sdk_relay/.conf /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"]