**Motivations:** - website-skeleton needs a real service contract with valid UUIDs and validators - Service wallet required for production use with configurable public key - Iframe styling needs improvement to remove scrollbars and match UserWallet theme **Root causes:** - DEFAULT_VALIDATEURS used placeholder public key that cannot verify signatures - No service wallet generation script for production deployment - Iframe had fixed height causing scrollbars and visual mismatch with dark theme **Correctifs:** - Created real service contract in src/serviceContract.ts with dedicated UUIDs (skeleton-service-uuid-4nkweb-2026) - Added service wallet generation script (generate-service-wallet.mjs) with .env and .env.private files - Improved iframe container styling: increased height (800px), dark background (#1a1a1a), better shadows, hidden scrollbars - Added .env.private to .gitignore for security **Evolutions:** - Service contract automatically loaded on startup and sent to UserWallet iframe - Public key configurable via VITE_SKELETON_SERVICE_PUBLIC_KEY environment variable - Added npm script 'generate-wallet' for easy wallet generation - Enhanced iframe visual integration with UserWallet dark theme **Pages affectées:** - website-skeleton/src/serviceContract.ts (new) - website-skeleton/src/config.ts - website-skeleton/src/main.ts - website-skeleton/generate-service-wallet.mjs (new) - website-skeleton/index.html - website-skeleton/package.json - website-skeleton/.gitignore - website-skeleton/.env (new) - website-skeleton/.env.private (new)
106 lines
3.5 KiB
Markdown
106 lines
3.5 KiB
Markdown
# Documentation Bitcoin Signet Custom
|
|
|
|
Ce dossier contient toute la documentation nécessaire pour la maintenance et l'utilisation du Bitcoin Signet custom.
|
|
|
|
## Fichiers de Documentation
|
|
|
|
- **[MAINTENANCE.md](./MAINTENANCE.md)** : Documentation complète de maintenance
|
|
- Architecture et structure
|
|
- Configuration et variables d'environnement
|
|
- Commandes de maintenance
|
|
- Gestion du conteneur
|
|
- Mining
|
|
- Accès RPC et API
|
|
- Mise à jour
|
|
- Dépannage
|
|
- Sauvegarde et restauration
|
|
|
|
- **[INSTALLATION_NEW_NODE.md](./INSTALLATION_NEW_NODE.md)** : Guide d'installation d'un nouveau nœud
|
|
- Installation initiale
|
|
- Configuration pour rejoindre une chaîne existante
|
|
- Configuration du mining
|
|
- Vérification et dépannage
|
|
- Partage d'informations avec d'autres nœuds
|
|
|
|
- **[INTERFACES.md](./INTERFACES.md)** : Documentation des interfaces disponibles
|
|
- API REST d'ancrage
|
|
- Interface RPC Bitcoin Core
|
|
- Interface ligne de commande (CLI)
|
|
- Interface ZMQ (ZeroMQ)
|
|
- Interface Docker
|
|
- Interface de configuration
|
|
- Interface de logs
|
|
|
|
- **[MEMPOOL.md](./MEMPOOL.md)** : Documentation de Mempool (explorateur blockchain)
|
|
- Installation et configuration
|
|
- Architecture et services
|
|
- Utilisation et maintenance
|
|
- Dépannage
|
|
- Intégration avec l'infrastructure
|
|
|
|
- **[DOMAINS_AND_PORTS.md](./DOMAINS_AND_PORTS.md)** : Documentation des domaines et ports
|
|
- Liste complète des domaines et services
|
|
- Ports fixes de toutes les APIs
|
|
- Configuration Nginx et routage
|
|
- Services systemd
|
|
- Architecture réseau
|
|
- Certificats SSL/TLS
|
|
|
|
- **[ENVIRONMENT.md](./ENVIRONMENT.md)** : Documentation des fichiers d'environnement
|
|
- Variables d'environnement de tous les services
|
|
- Fichiers `.env` et leur utilisation
|
|
- Configuration des services systemd
|
|
- Ordre de priorité des variables
|
|
- Sécurité et bonnes pratiques
|
|
|
|
- **[DASHBOARD.md](./DASHBOARD.md)** : Documentation du Dashboard
|
|
- Pages disponibles et fonctionnalités
|
|
- Navigation et structure
|
|
- Mise à jour automatique
|
|
- API endpoints utilisés
|
|
- Maintenance et dépannage
|
|
|
|
- **[WEBSITE_SKELETON.md](./WEBSITE_SKELETON.md)** : Squelette de site intégrant UserWallet en iframe
|
|
- Objectif et structure du projet `website-skeleton/`
|
|
- Configuration (origine UserWallet, validateurs)
|
|
- Utilisation, messages postMessage, références
|
|
|
|
- **[PAIRING_PUBLIC_KEY_ENCODING.md](./PAIRING_PUBLIC_KEY_ENCODING.md)** : Encodage de la clé publique dans les mots BIP32
|
|
- Problème identifié (récupération d'un pair par UUID sur un relais)
|
|
- Solution implémentée (encodage direct de la clé publique)
|
|
- Modifications techniques et impact
|
|
- Flux de pairing et migration
|
|
|
|
## Démarrage Rapide
|
|
|
|
### Installation
|
|
|
|
```bash
|
|
cd /home/ncantu/Bureau/code/bitcoin
|
|
sudo docker build -t bitcoin-signet .
|
|
sudo docker run --env-file .env -d --name bitcoin-signet-instance \
|
|
-p 38332:38332 -p 38333:38333 -p 28332:28332 -p 28333:28333 -p 28334:28334 \
|
|
bitcoin-signet
|
|
```
|
|
|
|
### Vérification
|
|
|
|
```bash
|
|
sudo docker exec bitcoin-signet-instance bitcoin-cli -datadir=/root/.bitcoin getblockchaininfo
|
|
```
|
|
|
|
### Logs
|
|
|
|
```bash
|
|
sudo docker logs -f bitcoin-signet-instance
|
|
```
|
|
|
|
## Informations Importantes
|
|
|
|
- **Ports** : RPC (38332), P2P (38333), ZMQ (28332-28334)
|
|
- **Configuration** : Fichier `.env` à la racine du projet
|
|
- **Données** : Stockées dans `/root/.bitcoin/` dans le conteneur
|
|
- **Clés** : Générées automatiquement, stockées dans `.env` et `/root/.bitcoin/PRIVKEY.txt`
|
|
|
|
Pour plus de détails, consultez [MAINTENANCE.md](./MAINTENANCE.md).
|