Directives de développement | Partie 1

(1) Installation du nœud Cardano

Téléchargement d’exécutables pré-compilés

Vous pouvez installer le nœud Cardano et la cli à l’aide de fichiers exécutables précompilés pour votre plate-forme.

Construire à partir de la source

Alternativement, si vous souhaitez compiler à partir de la source, deux options s’offrent à vous. En fonction de vos préférences d’outil de génération, vous pouvez créer à partir du code source en utilisant l’une des méthodes suivantes :

Veuillez vous référer à la page des versions cardano-node pour vous assurer que vous travaillez avec la dernière version du nœud.

Une fois que vous avez installé le nœud, vous devez spécifier les paramètres de configuration.

Utiliser Docker

Il existe également une image Docker disponible que vous pouvez utiliser.

Configuration de Docker

  • Téléchargez et installez Docker/Docker Desktop à partir du site Docker.
  • Si vous utilisez Windows ou Mac, assurez-vous d’avoir alloué suffisamment de RAM à Docker (nous vous recommandons de définir la RAM sur 8 Go dans les exigences de Docker Desktop) et démarrez le démon Docker, comme décrit dans les instructions Docker. Notez que Docker sur Linux, il n’y a pas de limites de RAM pour les conteneurs par défaut.

Configuration du nœud Cardano

  • Téléchargez l’image cardano-node correcte :

docker image pull inputoutput/cardano-node :<TAG>

<TAG> est la balise de la version dont vous avez besoin (par exemple, latest pour la version stable la plus récente, ou 1.35.3 pour la version de nœud 1.35.3).

  • Créez des volumes cardano-node-data et cardano-node-ipc locaux :

docker volume create cardano-node-data docker volume create cardano-node-ipc

Exécution du nœud Cardano

  • Exécutez un nœud passif connecté au bon réseau. Par exemple, pour un mainnet node :

docker run -e NETWORK=mainnet -v cardano-node-ipc:/ipc -v cardano-node-data:/data inputoutput/cardano-node

Cela crée un environnement docker persistant pour le nœud, où /ipc dans le conteneur Docker est connecté au volume logique cardano-node-ipc et /data est connecté au volume cardano-node-data. Notez que vous devez changer NETWORK=mainnet si vous vous connectez à un autre réseau (par exemple un testnet).

Passer des paramètres de configuration explicites

Vous pouvez également exécuter le nœud avec des paramètres spécifiques :

docker run -v cardano-node-ipc:/ipc -v cardano-node-data:/data inputoutput/cardano-node run --help

S’il n’y a pas de configuration réseau prédéfinie, vous devrez télécharger les fichiers de configuration spécifiés, les copier sur le volume Docker persistant et transmettre les paramètres sur la ligne de commande :

docker run -v cardano-node-ipc:/ipc -v cardano-node-data:/data inputoutput/cardano-node run --config ... --topology ... --...

Exécution des commandes Cardano CLI

Vous pouvez maintenant exécuter des commandes CLI Cardano normales, par exemple,

export CLI=‘docker run -it --entrypoint cardano-cli -e NETWORK=mainnet -e CARDANO_NODE_SOCKET_PATH=/ipc/node.socket -v cardano-node-ipc:/ipc inputoutput/cardano-node’ $CLI version $CLI query tip --mainnet $CLI transaction build-raw … --mainnet

Vous devez spécifier CARDANO_NODE_SOCKET_PATH pour pointer vers l’emplacement correct dans le conteneur (/ipc/node.socket est l’emplacement standard).

Exécution d’un shell dans le conteneur Docker

Pour exécuter un shell dans le conteneur (afin que vous puissiez inspecter ou modifier les paramètres, par exemple), utilisez le point d’entrée bash ou sh.

docker run -it --entrypoint bash -v cardano-node-ipc:/ipc -v cardano-node-data:/data inputoutput/cardano-node

Vous pouvez maintenant exécuter toutes les commandes dont vous avez besoin avec un accès complet aux systèmes de fichiers du conteneur.

bash-4.4# cd /data/db bash-4.4# ls immutable ledger lock protocolMagicId volatile bash-4.4#

Vous pouvez également démarrer le conteneur de nœuds avec un nom.

docker run --name cardano-node -e NETWORK=mainnet -v cardano-node-ipc:/ipc -v cardano-node-data:/data inputoutput/cardano-node

Dans une instance de terminal distincte, exécutez shell dans un conteneur existant.

docker exec -it cardano-node bash

Copier des fichiers vers/depuis le conteneur Docker

Pour copier des fichiers vers/depuis le conteneur docker, utilisez docker cp.

Par exemple, si l’ID de processus du conteneur en cours d’exécution est 760199bf3561

kh@vulcan:~$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 760199bf3561 inputoutput/cardano-node “/nix/store/p435ajna…” …

Ensuite pour copier le répertoire immuable (si vous avez une version en cache), par exemple, vous pouvez :

docker cp db/immuable 760199bf3561:/data/db/immuable

Vous pouvez également monter des répertoires locaux à utiliser par le conteneur. Par exemple, pour partager les répertoires db et node-ipc, vous pouvez :

docker run ---mount type=bind,source="$(pwd)/db/",target=/data/db --mount type=bind,source="$(pwd)/node-ipc",target= /ipc inputoutput/cardano-node ...

Rubriques connexes

Utilisation de l’interface de ligne de commande

(2) Tests de nœud Cardano

Les tests de nœud Cardano sont des tests système basés sur CLI et de bout en bout pour le nœud Cardano.

Les tests de nœuds sont open source pour les utilisateurs de nœuds Cardano exécutant la CLI, les SPO, les développeurs d’outils tiers et d’autres pour tester les fonctionnalités de Cardano du point de vue de l’utilisateur final.

Les références

Vous pouvez accéder à la documentation des tests de nœud Cardano ici.

La documentation comprend des sections telles que :

  • Commencer. Explique le processus de configuration, d’utilisation, de test des variables, etc.
  • Résultats de test. Inclut des détails sur les tests nocturnes, les tests de synchronisation et les tests de balise de nœud.
  • Processus. Couvre les types et les niveaux de tests, la stratégie de contrôle de la qualité et la stratégie de test d’acceptation par les utilisateurs avec d’autres processus à ajouter prochainement.
  • Guides pratiques. Guides sur le démarrage d’un cluster local, le test de soumission de certificat MIR, les informations d’identification de pieu et l’utilisation de SMASH.

(3) Journalisation et surveillance

Une surveillance régulière des nœuds actifs est cruciale pour déterminer si le nœud fonctionne de manière optimale, si le système est performant ou si un réglage fin est nécessaire.

Activez une trace sur le nœud pour accéder aux métriques, y compris le trafic réseau, l’utilisation de la mémoire et les données générales de la blockchain.

Pour plus de détails, voir : Configuration de la journalisation

Vous pouvez ensuite choisir un ensemble d’outils pour surveiller votre nœud :

(4) Utilisation de l’interface de ligne de commande

L’interface de ligne de commande cardano-cli (CLI) est installée dans le cadre du processus d’installation du nœud. Cette CLI fournit une collection d’outils pour générer des clés, construire des transactions, créer des certificats et d’autres tâches importantes.

Il est organisé en une hiérarchie de sous-commandes, et chaque niveau est livré avec sa propre documentation intégrée de la syntaxe de commande et des options. Pour plus de détails, lisez la référence des commandes CLI.

Pour accéder à l’aide de niveau supérieur, tapez la commande suivante (sans arguments) : cardano-cli

Toutes les sous-sous-commandes disponibles sont affichées, dont l’une est node. Pour continuer à explorer la hiérarchie, saisissez la commande suivante : cardano-cli node

Pour en savoir plus sur la sous-sous-sous-commande key-gen, saisissez la commande suivante :

cardano-cli node key-gen

Les paramètres pris par cette commande sont affichés. Pour générer une paire de clés hors ligne et un fichier pour le compteur de problèmes, saisissez la commande suivante :

cardano-cli node key-gen \ –cold-verification-key-file cold.vkey \ –cold-signing-key-file cold.skey \ –operational-certificate-issue-counter-file cold.counter

Source : https://docs.cardano.org/development-guidelines/installing-the-cardano-node