sdk_relay/Dockerfile
4NK Dev 16ee2de894
Some checks failed
build-and-push-ext / build_push (push) Failing after 9s
ci: docker_tag=ext - Correction du Dockerfile pour le build CI
- Cloner sdk_common depuis le repository Git au lieu de le copier localement
- Résout l'erreur de build 'sdk_common not found' dans le CI
2025-09-20 09:19:09 +00:00

49 lines
1.4 KiB
Docker

# 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
# Cloner sdk_common depuis le repository
RUN --mount=type=ssh git clone ssh://git@git.4nkweb.com/4nk/sdk_common.git /sdk_common
# Copie des fichiers de sdk_relay
COPY Cargo.toml Cargo.lock ./
COPY src/ src/
# Build avec support SSH pour récupérer les dépendances
RUN --mount=type=ssh cargo build --release
# ---- image finale ----
FROM debian:bookworm-slim
RUN apt-get update && apt-get install -y ca-certificates strace curl dnsutils jq git wget telnet
# Créer l'utilisateur bitcoin
RUN useradd -m -d /home/bitcoin -u 1000 bitcoin
COPY --from=builder /app/target/release/sdk_relay /usr/local/bin/sdk_relay
RUN chown bitcoin:bitcoin /usr/local/bin/sdk_relay && \
chmod 755 /usr/local/bin/sdk_relay
# Configuration via build arg
ARG CONF
RUN echo "$CONF" > /home/bitcoin/.conf && \
chown bitcoin:bitcoin /home/bitcoin/.conf && \
chmod 644 /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", "/home/bitcoin/.conf"]