Infrastructure Monero auto-hébergée
🧭 Présentation
Cette stack Monero permet d'héberger un noeud complet, de miner via P2Pool, et de faire tourner XMRig optimisé pour ton CPU. Elle est contenue dans Docker pour être facile à maintenir, à déployer, et à isoler du reste du système.
🧱 Architecture
- monerod : Nœud Monero complet
- p2pool : Minage décentralisé solo
- xmrig : Mineur CPU optimisé
- Docker : Conteneurisation de chaque service
💡 Pourquoi faire ?
Monero est une cryptomonnaie axée sur la confidentialité, où toutes les transactions sont chiffrées par défaut. En hébergeant ta propre stack, tu gardes le contrôle total sur ta synchronisation, ton minage et tes connexions, sans dépendre de services tiers.
Grâce à son algorithme de minage RandomX, Monero reste accessible au minage sur CPU, même si les performances peuvent varier fortement selon l’architecture. Ce projet est donc adapté à des profils techniques souhaitant contribuer au réseau, sécuriser leurs transactions, ou simplement apprendre à auto-héberger un système complet.

⚙️ Mise en place
Voici comment configurer chaque élément de la stack.
docker-compose.yml
Utilise un fichier docker-compose.yml
pour gérer les trois services :monerod, p2pool et xmrig.
Voici un exemple minimaliste :
version: '3.7'
services:
monerod:
image: monero:latest
ports:
- "18081:18081"
- "18083:18083"
volumes:
- ./data/monerod:/home/monero/.bitmonero
command: --non-interactive --restricted-rpc --rpc-bind-ip=0.0.0.0
p2pool:
image: p2pool/p2pool:latest
ports:
- "3333:3333"
volumes:
- ./data/p2pool:/data
depends_on:
- monerod
xmrig:
image: xmrig/xmrig:latest
command: ["--url", "p2pool:3333", "--user", "wallet_address"]
Volumes & persistance
Les volumes Docker garantissent la persistance de la blockchain, des fichiers wallet et des logs. Place-les dans un dossier versionné ou sauvegardé pour éviter toute perte de données en cas de mise à jour ou plantage.
Configuration réseau
Expose les bons ports dans ton `docker-compose.yml` ou dans Traefik :
18081
: RPC public de monerod18083
: RPC Wallet (optionnel mais utile en local)3333
: Port P2Pool pour XMRig
XMRig optimisé
Pour de meilleures performances, compile XMRig directement sur la machine cible avec :
cmake -DWITH_HWLOC=ON -DHWLOC_DIR=/path/to/hwloc -DCMAKE_BUILD_TYPE=Release -DXMRIG_DEPS=scripts/deps -Bbuild -H. -march=native
Sinon, utilise une image Docker comme xmrig/xmrig:latest
, moins performante mais plus rapide à déployer.
Connexion wallet
Si ton nœud est accessible depuis l’extérieur (via Traefik et HTTPS), tu peux le connecter à Cake Wallet ou Monerujo en ajoutant un nœud personnalisé :
- Adresse :
https://monero.monsite.fr
- Port :
443
(grâce au reverse proxy) - Type : Nœud distant personnalisé (custom node)