Comprendre, installer, configurer et utiliser un nœud Bitcoin
Prérequis pour installer un Dojo
Choisir son type de machine
- un ordinateur portable ;
- un ordinateur de bureau ;
- un mini-PC (par exemple un Intel NUC, Lenovo Thincentre Tiny...).
- Le prix : un mini-PC ou un ordinateur de bureau reconditionné sera souvent moins cher qu’un portable neuf.
- L’encombrement : un mini-PC prend moins de place.
- L’alimentation électrique : un portable a l’avantage d’avoir une batterie, ce qui lui évite de s’éteindre en cas de micro-coupure, contrairement à un mini-PC.
- Les possibilités d’évolution : les barbones (ordinateurs de bureau) permettent généralement d’ajouter de la mémoire ou de remplacer facilement un disque dur.
Matériel recommandé
- Architecture x86-64 (processeur 64 bits).
- Processeur double cœur 2 GHz ou plus rapide.
- 8 Go de RAM minimum.
- Disque SSD NVMe de 2 To ou plus (pour stocker la blockchain de Bitcoin et les index nécessaires).
- Une distribution basée sur Debian, comme Ubuntu 24.04 LTS.
- HP EliteDesk / EliteBook
- Dell OptiPlex
- Lenovo ThinkCentre / ThinkPad
- Intel NUC
- etc.
1 - Installer Ubuntu
1.1. Créer la clé USB amorçable
24.04 au moment de la rédaction de ce tutoriel, mais prenez la plus récente si une autre est disponible).1.2. Installer le système d'exploitation
- Choisissez la langue.
- Sélectionnez le type de clavier.
- Si vous êtes connecté par câble RJ45, inutile de configurer le Wi-Fi.
- Cliquez sur "Install Ubuntu" et cochez l’option permettant l’installation des logiciels tiers (pilotes Wi-Fi, codecs multimédias...).
- Lorsque l’assistant vous demande le type d’installation, sélectionnez "Erase disk and install Ubuntu". Attention : cette opération effacera entièrement le contenu du disque. Vérifiez attentivement que le disque choisi correspond bien au SSD NVMe destiné à Dojo.
- Créez un nom d’utilisateur simple (par exemple "loic").
- Attribuez un nom à la machine (par exemple "dojo-node").
- Définissez un mot de passe robuste et conservez-le précieusement.
- Activez l’option "Demander mon mot de passe pour ouvrir une session" afin de renforcer la sécurité.
- Indiquez votre fuseau horaire, puis cliquez sur "Install".
- Patientez le temps de l’installation. Une fois terminée, le système redémarrera automatiquement.
- Retirez la clé USB d’installation lors du redémarrage de l’ordinateur.
1.3. Mise à jour du système
sudo apt update sudo apt upgrade -y
2. Installation des dépendances
2.1. Préparation
cd ~/
sudo apt-get update
2.2. Installer les utilitaires
apt-transport-https: permet de télécharger des paquets de manière sécurisée via HTTPSca-certificates: gère les certificats nécessaires aux connexions chiffréescurl: pour récupérer des fichiers depuis Internetgnupg-agent: pour la gestion de clés GPGsoftware-properties-common: fournit des utilitaires pour manipuler les dépôts APTunzip: permet de décompresser des fichiers au format ZIP
sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common unzip
2.3. Installer Torsocks
sudo apt install torsocks
2.4. Installer Docker et Docker Compose
Ajout de la clé de signature Docker
sudo apt-get update sudo apt-get install ca-certificates curl sudo install -m 0755 -d /etc/apt/keyrings sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc sudo chmod a+r /etc/apt/keyrings/docker.asc
Ajout du dépôt officiel Docker
echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \ $(. /etc/os-release && echo "*$VERSION_CODENAME*") stable" | \ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt-get update
Installation de Docker et Docker Compose
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Autorisation utilisateur
sudo.sudo usermod -aG docker $USER
3. Création d’un utilisateur isolé (optionnel)
3.1. Création du compte utilisateur
/home/dojo et de l’accès au terminal bash. Il sera également ajouté au groupe sudo pour permettre l’exécution de commandes admin.sudo useradd -s /bin/bash -d /home/dojo -m -G sudo dojo
3.2. Définition d’un mot de passe
sudo passwd dojo
3.3. Autoriser l'utilisateur à utiliser Docker
sudo.sudo usermod -aG docker dojo
3.4. Redémarrage du système
sudo reboot
3.5. Connexion avec le nouvel utilisateur
4. Télécharger et vérifier Dojo
4.1. Importer la clé PGP du développeur
torsocks wget http://zkaan2xfbuxia2wpf7ofnkbz6r5zdbbvxbunvp5g2iebopbfc4iqmbad.onion/vks/v1/by-fingerprint/E53AD419B242822F19E23C6D3033D463D6E544F6 && gpg --import E53AD419B242822F19E23C6D3033D463D6E544F6
4.2. Télécharger la dernière version de Dojo
1.27.0 : modifiez la commande en fonction de la dernière version présente ici sur le dépôt GitHub officiel.torsocks wget -O samourai-dojo-1.27.0.zip https://github.com/Dojo-Open-Source-Project/samourai-dojo/archive/refs/tags/v1.27.0.zip
4.3. Télécharger les empreintes et leur signature
torsocks wget https://github.com/Dojo-Open-Source-Project/samourai-dojo/releases/download/v1.27.0/samourai-dojo-1.27.0-fingerprints.txt && torsocks wget https://github.com/Dojo-Open-Source-Project/samourai-dojo/releases/download/v1.27.0/samourai-dojo-1.27.0-fingerprints.txt.sig
4.4. Vérifier la signature PGP
gpg --verify samourai-dojo-1.27.0-fingerprints.txt.sig
E53AD419B242822F19E23C6D3033D463D6E544F6 et l’adresse associée [email protected]. Un avertissement peut apparaître précisant que la clé n’est pas certifiée : vous pouvez l'ignorer.4.5. Vérifier l’intégrité de l’archive
sha256sum samourai-dojo-1.27.0.zip cat samourai-dojo-1.27.0-fingerprints.txt
4.6. Extraire et organiser les fichiers
unzip samourai-dojo-1.27.0.zip -d . mkdir ~/dojo-app mv ~/samourai-dojo-1.27.0/* ~/dojo-app/
4.7. Nettoyer les fichiers inutiles
rm -r samourai-dojo-1.27.0 && rm samourai-dojo-1.27.0.zip && rm samourai-dojo-1.27.0-fingerprints.txt && rm samourai-dojo-1.27.0-fingerprints.txt.sig && rm E53AD419B242822F19E23C6D3033D463D6E544F6
5. Configuration de Dojo
- Dojo (API principale)
- Bitcoin Core (nœud complet Bitcoin)
- BTC-RPC Explorer (explorateur de blocs web)
- Fulcrum Indexer (indexation rapide des blocs et des transactions)
- Fulcrum Electrum Server disponible sur le réseau Tor
- Fulcrum Electrum Server disponible sur le réseau local
- Identifiants d’administration
5.1. Identifiants d’administration
BITCOIND_RPC_USERBITCOIND_RPC_PASSWORDMYSQL_ROOT_PASSWORDMYSQL_USERMYSQL_PASSWORDNODE_API_KEYNODE_ADMIN_KEYNODE_JWT_SECRET
5.2. Accéder aux fichiers de configuration
conf/. Déplacez-vous dans ce répertoire :cd ~/dojo-app/docker/my-dojo/conf/
5.3. Configuration de Bitcoin Core
nano docker-bitcoind.conf.tpl
BITCOIND_RPC_USER=your-ID-here BITCOIND_RPC_PASSWORD=your-password-here
your-ID-here et your-password-here par vos propres identifiants (avec un mot de passe fort).BITCOIND_DB_CACHE=2048
- appuyez sur
Ctrl + X - tapez
y - puis appuyez sur "Entrée"
5.4. Configuration de MySQL
nano docker-mysql.conf.tpl
MYSQL_ROOT_PASSWORD=your-password-here MYSQL_USER=your-ID-here MYSQL_PASSWORD=your-password-here
your-ID-here et your-password-here par vos propres identifiants (avec des mot de passe forts et uniques).Ctrl + X, y, "Entrée").5.5. Configuration de l’indexeur Fulcrum
nano docker-indexer.conf.tpl
INDEXER_INSTALL=on INDEXER_TYPE=fulcrum INDEXER_BATCH_SUPPORT=active INDEXER_EXTERNAL=on
INDEXER_EXTERNAL_IP=192.168.1.157
hostname -I
INDEXER_EXTERNAL_IP=127.0.0.1
Ctrl + X, y, "Entrée").5.6. Configuration du service Node
nano docker-node.conf.tpl
NODE_API_KEY=your-password-here NODE_ADMIN_KEY=your-password-here NODE_JWT_SECRET=your-password-here
your-password-here par vos propres identifiants (avec des mot de passe forts et uniques).NODE_ACTIVE_INDEXER=local_indexer
Ctrl + X, y, "Entrée").5.7. Gestion des identifiants
NODE_ADMIN_KEY
6. Installation de Dojo
6.1. Vérifier le bon fonctionnement de Docker
docker run hello-world
Hello from Docker! This message shows that your installation appears to be working correctly...
sudo reboot
2.4. consacrée à l’installation de Docker et vérifiez attentivement chaque commande.6.2. Accéder au répertoire d’installation de Dojo
my-dojo. Déplacez-vous dans ce répertoire :cd ~/dojo-app/docker/my-dojo
ls que le fichier dojo.sh est bien présent. Il s’agit du script principal qui automatise l’installation de Dojo et le lancement de tous ses services.6.3. Lancer l’installation
./dojo.sh install
y puis "Entrée".- télécharger et lancer les conteneurs Docker nécessaires,
- initialiser Bitcoin Core et commencer à synchroniser la blockchain,
- démarrer l’indexeur Fulcrum pour tracer les transactions et les adresses,
- activer le backend Dojo et ses API.
bitcoind, soroban, nodejs ou encore fulcrum. Ce défilement indique que Dojo fonctionne et commence à exécuter les différents services.6.4. Quitter l’affichage des journaux
Ctrl + C
6.5. Comprendre l’Initial Block Download (IBD)
- la puissance de votre processeur et la quantité de mémoire RAM disponible,
- la vitesse de votre disque,
- le nombre et la qualité des pairs auxquels votre nœud se connecte,
- la vitesse de votre connexion Internet.
7. Suivi de la synchronisation
- l’utilisation de l’outil de maintenance de Dojo (ou DMT), qui est simple mais fournit peu de détails durant l’IBD ;
- la consultation directe des logs de Dojo sur votre machine, plus technique mais beaucoup plus précise.
7.1. Vérification via l’outil de maintenance de Dojo (DMT)
- tous les voyants au vert ;
- le dernier bloc validé à jour pour chaque service (Node, Indexer, Dojo DB).
/my-dojo :cd ~/dojo-app/docker/my-dojo
./dojo.sh onion
Dojo API and Maintenance Tool =
/admin. Par exemple, si votre URL est wo4zobymdl45gmmzzmpoypeemoukbj74wpibc22rxs2yfgpej62v6dyd.onion, vous devrez entrer dans la barre de Tor Browser :wo4zobymdl45gmmzzmpoypeemoukbj74wpibc22rxs2yfgpej62v6dyd.onion/admin
NODE_ADMIN_KEY que vous avez généré plus tôt.7.2. Vérification via les logs de Dojo
my-dojo. Positionnez-vous dans ce dossier :cd ~/dojo-app/docker/my-dojo
Logs de Bitcoin Core
./dojo.sh logs bitcoind
bitcoind | Pre-synchronizing blockheader, height : NNNNNN
height=. Vous pouvez également suivre la clé progress=, qui renseigne le pourcentage d’avancement de l’IBD.Ctrl + C.Logs de Fulcrum
./dojo.sh logs fulcrum
height:, ainsi que le pourcentage de progression de l’indexation.7.3. Corruption de la base de données de Fulcrum
fulcrum | The database has been corrupted etc...
cd ~/dojo-app/docker/my-dojo ./dojo.sh stop
docker rm -f fulcrum || true docker volume ls | grep -i fulcrum docker volume rm my-dojo_data-fulcrum
my-dojo_data-fulcrum, si ce n'est pas le cas pour vous, adaptez le nom renvoyé par la commande précédente../dojo.sh upgrade
docker logs -f fulcrum
8. Utilisation du Dojo Maintenance Tool
- la possibilité de connecter votre portefeuille Ashigaru afin d’utiliser votre propre nœud pour consulter les données de la blockchain et diffuser vos transactions,
- et l’explorateur de blocs, qui offre un accès à des informations sur la blockchain Bitcoin sans exposer vos données à une instance extérieure que vous ne contrôlez pas.
8.1. Connecter Ashigaru à votre Dojo
8.2. Utiliser l'explorateur de bloc
./dojo.sh onion
Block Explorer =
9. Maintenance de votre Dojo
9.1 Arrêter votre Dojo
cd ~/dojo-app/docker/my-dojo ./dojo.sh stop
9.2 Mettre à jour votre Dojo
./dojo.sh version
sudo apt-get update sudo apt-get upgrade
cd ~/dojo-app/docker/my-dojo ./dojo.sh stop
sudo reboot
torsocks wget http://zkaan2xfbuxia2wpf7ofnkbz6r5zdbbvxbunvp5g2iebopbfc4iqmbad.onion/vks/v1/by-fingerprint/E53AD419B242822F19E23C6D3033D463D6E544F6 && gpg --import E53AD419B242822F19E23C6D3033D463D6E544F6
cd ~/
1.28.0 (qui n'existe pas encore au moment de la rédaction de ce tuto : c'est pour prendre un exemple). Pensez à remplacer le fichier et le lien avec la version que vous souhaitez installer :torsocks wget -O samourai-dojo-1.28.0.zip https://github.com/Dojo-Open-Source-Project/samourai-dojo/archive/refs/tags/v1.28.0.zip
torsocks wget https://github.com/Dojo-Open-Source-Project/samourai-dojo/releases/download/v1.28.0/samourai-dojo-1.28.0-fingerprints.txt && torsocks wget https://github.com/Dojo-Open-Source-Project/samourai-dojo/releases/download/v1.28.0/samourai-dojo-1.28.0-fingerprints.txt.sig
gpg --verify samourai-dojo-1.28.0-fingerprints.txt.sig
gpg: Signature made [date + time] gpg: using EDDSA key E53AD419B242822F19E23C6D3033D463D6E544F6 gpg: Good signature from "[email protected]" <[email protected]> [unknown]
sha256sum samourai-dojo-1.28.0.zip cat samourai-dojo-1.28.0-fingerprints.txt
unzip samourai-dojo-1.28.0.zip -d .
cp -a samourai-dojo-1.28.0/. dojo-app/
~/dojo-app/docker/my-dojo/conf, mais remplace tous les autres fichiers par les versions mises à jour.rm -r samourai-dojo-1.28.0 && rm samourai-dojo-1.28.0.zip && rm samourai-dojo-1.28.0-fingerprints.txt && rm samourai-dojo-1.28.0-fingerprints.txt.sig && rm E53AD419B242822F19E23C6D3033D463D6E544F6
cd ~/dojo-app/docker/my-dojo ./dojo.sh upgrade -y
./dojo.sh logs bitcoind ./dojo.sh logs fulcrum
Auteur
Ce tutoriel a été écrit par Loïc Morel
Vous pouvez dire merci en donnant un pourboire au professeur.
J'écris des contenus pédagogiques sur Bitcoin.
Crédits
Ce tutoriel a été relu par LoicPandul & JosephQuaye
Même si cette page est dans sa langue d'origine, une relecture humaine est toujours nécessaire pour garantir son exactitude.
LoicPandulJosephQuaye0 satsChaque élément de contenu sur la plateforme est le produit d'un effort collaboratif : chaque leçon, traduction et révision est rendue possible grâce au travail des contributeurs. C'est pour cette raison que nous sommes toujours à la recherche de correcteurs qui peuvent examiner notre contenu dans un grand nombre de langues. Si vous souhaitez participer au processus de relecture, veuillez nous rejoindre dans notre groupe Telegram et consulter notre tutoriel. Nous vous rappelons que ce contenu est open-source - sous licence CC BY-SA - et peut donc être partagé et utilisé librement, à condition que la source originale soit reconnue.



