# bitcoin/Dockerfile FROM debian:bullseye-slim as builder # Installation des dépendances RUN apt-get update && apt-get install -y \ curl \ gnupg \ && rm -rf /var/lib/apt/lists/* # Version de Bitcoin Core ENV VERSION=24.1 # Téléchargement et vérification de Bitcoin Core WORKDIR /tmp RUN curl -O https://bitcoincore.org/bin/bitcoin-core-${VERSION}/bitcoin-${VERSION}-x86_64-linux-gnu.tar.gz && \ curl -O https://bitcoincore.org/bin/bitcoin-core-${VERSION}/SHA256SUMS.asc && \ curl -O https://bitcoincore.org/bin/bitcoin-core-${VERSION}/SHA256SUMS # Extraction de Bitcoin Core RUN tar -xzf bitcoin-${VERSION}-x86_64-linux-gnu.tar.gz # Image finale FROM debian:bullseye-slim # On redéfinit la version dans l'image finale ENV VERSION=24.1 # Installation des dépendances nécessaires RUN apt-get update && apt-get install -y \ libatomic1 \ && rm -rf /var/lib/apt/lists/* # Créer l'utilisateur et le groupe bitcoin RUN groupadd -g 1000 bitcoin && \ useradd -m -d /home/bitcoin -g bitcoin bitcoin # Copie des binaires depuis le builder COPY --from=builder /tmp/bitcoin-${VERSION}/bin/bitcoind /usr/local/bin/ COPY --from=builder /tmp/bitcoin-${VERSION}/bin/bitcoin-cli /usr/local/bin/ # Configuration RUN mkdir -p /home/bitcoin/.bitcoin/wallets /home/bitcoin/.bitcoin/signet && \ chown -R bitcoin:bitcoin /home/bitcoin/.bitcoin COPY bitcoin.conf /home/bitcoin/.bitcoin/bitcoin.conf RUN chown bitcoin:bitcoin /home/bitcoin/.bitcoin/bitcoin.conf VOLUME ["/home/bitcoin/.bitcoin"] # Exposition des ports (signet) EXPOSE 38332 38333 29000 18443 USER bitcoin WORKDIR /home/bitcoin ENTRYPOINT ["bitcoind", "-conf=/home/bitcoin/.bitcoin/bitcoin.conf", "-signet", "-printtoconsole"]