web-dev-qa-db-fra.com

Comment résoudre l'erreur sur le tissu hyperledger?

Tout en essayant de suivre le tutoriel sur la construction de votre premier réseau, j'ai la sortie suivante:

$  ./byfn.sh -m generate

Génération de certs et de blocs de genèse avec le canal 'mychannel' et le délai d'attente CLI de '10000' Continuer (y/n)? y en cours ... qui: pas de cryptogène dans (/c/users/ayush/fabric-samples/first-network/../bin:/c/users/ayush/fabric-samples/first-network:c:/users/ayush/bin:/c/Utilisateurs/ayush/bin:/mingw64/bin:/usr/local/bin:/usr/bin:/bin:/c/Fichiers de programme/Boîte à outils Docker:/c/Utilisateurs/ayush/bin:/mingw64/bin:/usr/local/bin:/usr/bin:/bin:/mingw64/bin:/usr/bin:/c/Utilisateurs/ayush/bin:/c/ProgramData/Oracle/Java/javapath:/c/Fichiers de programme/Docker/Docker/Ressources/bin:/c/Windows/system32:/c/Windows:/c/Windows/System32/Wbem: /c/Windows/System32/WindowsPowerShell/v1.0:/c/Program Files (x86)/NVIDIA Corporation/PhysX/Common:/c/Fichiers de programme/Intel/WiFi/bin:/c/Fichiers de programme/Fichiers communs/Intel/WirelessCommon:/cmd:/c/WINDOWS/system32:/c/WINDOWS :/c/WINDOWS/System32/Wbem: /c/WINDOWS/System32/WindowsPowerShell/v1.0: /c/Gradle/gradle-3.3/bin:/c/Go/bin:/c/Program Files/nodejs:/c/Utilisateurs/ayush/AppData/Local/Programmes/Python/Python36/Scripts:/c/Utilisateurs/ayush/AppData/Programmes/Python/Python36:/c/Utilisateurs/ayush/AppData/Local/Microsoft/WindowsApps:/c/python:/c/Progra Fichiers/Boîte à outils Docker:/c/Utilisateurs/ayush/AppData/Roaming/npm:/usr/bin/vendor_Perl:/usr/bin/core_Perl:/usr/bin/vendor_Perl:/usr/bin/core_Perl) outil cryptogène non trouvé. sortant

Quel est le problème et comment puis-je le résoudre?

6
Ayush Gupta

La clé de votre problème se trouve dans la dernière phrase:

outil cryptogène non trouvé. sortant

Vous devez vous assurer que l'outil cryptogen a été compilé avant d'essayer d'exécuter l'exemple avec ./byfn.sh. Il suffit de lancer depuis le dossier personnel de la matrice:

make cryptogen configtxgen peer orderer peer-docker orderer-docker tools-docker

Mettre à jour 

Vous manquez: " Binaires spécifiques à la plate-forme ", voyez ici comment les obtenir.

5
Artem Barger

Si vous utilisez un mac, procédez comme suit dans le terminal: 

brew tap hyperledger/fabric

brew install fabric-tools

puis réessayez avec ./byfn.sh -m generate command 

2
Robert Tomas G IV

Veuillez suivre les étapes ci-dessous pour résoudre ce problème:

1.Téléchargez les fichiers binaires spécifiques à la plate-forme à l'aide de la commande

curl -sSL https://raw.githubusercontent.com/hyperledger/fabric/master/scripts/bootstrap.sh | bash -s 1.1.0 "

Une fois que vous exécutez la commande, différents outils tels que cryptogen, configtxgen, etc. seront téléchargés dans le répertoire bin.

1.ajoutez le répertoire bin à votre variable PATH à l'aide de la commande ci-dessous Export PATH =./Bin: $ PATH

1
NTT_TNN

J'ai maintenant la réponse… .. Ce problème est causé par le manque de cryptogène, qui est en effet un outil de commande. Le moyen le plus simple de l'obtenir est de télécharger les fichiers binaires spécifiques à la plate-forme sur votre ordinateur local, voici le sh:

cd fabric-samples
curl -sSL https://raw.githubusercontent.com/hyperledger/fabric/master/scripts/bootstrap-1.0.1.sh | bash

Ce sh téléchargera un fichier bash contenant les dernières images du menu fixe Fabric et les outils spécifiques à la plate-forme. Son contenu est présenté ci-dessous:

#!/bin/bash
#
# Copyright IBM Corp. All Rights Reserved.
#
# SPDX-License-Identifier: Apache-2.0
#

export VERSION=1.0.1
export Arch=$(echo "$(uname -s|tr '[:upper:]' '[:lower:]'|sed 's/mingw64_nt.*/windows/')-$(uname -m | sed 's/x86_64/AMD64/g')" | awk '{print tolower($0)}')
#Set MARCH variable i.e ppc64le,s390x,x86_64,i386
MARCH=`uname -m`

dockerFabricPull() {
  local FABRIC_TAG=$1
  for IMAGES in peer orderer couchdb ccenv javaenv kafka zookeeper tools; do
      echo "==> FABRIC IMAGE: $IMAGES"
      echo
      docker pull hyperledger/fabric-$IMAGES:$FABRIC_TAG
      docker tag hyperledger/fabric-$IMAGES:$FABRIC_TAG hyperledger/fabric-$IMAGES
  done
}

dockerCaPull() {
      local CA_TAG=$1
      echo "==> FABRIC CA IMAGE"
      echo
      docker pull hyperledger/fabric-ca:$CA_TAG
      docker tag hyperledger/fabric-ca:$CA_TAG hyperledger/fabric-ca
}

: ${CA_TAG:="$MARCH-$VERSION"}
: ${FABRIC_TAG:="$MARCH-$VERSION"}

echo "===> Downloading platform binaries"
curl https://nexus.hyperledger.org/content/repositories/releases/org/hyperledger/fabric/hyperledger-fabric/${Arch}-${VERSION}/hyperledger-fabric-${Arch}-${VERSION}.tar.gz | tar xz

echo "===> Pulling fabric Images"
dockerFabricPull ${FABRIC_TAG}

echo "===> Pulling fabric ca Image"
dockerCaPull ${CA_TAG}
echo
echo "===> List out hyperledger docker images"
docker images | grep hyperledger*

Maintenant qu'il est basé sur Fabric 1.0.1, vous pouvez trouver la dernière version de cette bash à partir d'ici: http://hyperledger-fabric.readthedocs.io/en/latest/samples.html

Une fois l'exécution sh terminée, il y aura un dossier nommé bin dans le répertoire en cours, puis copiez les fichiers de ce dossier dans un dossier pouvant faire l'objet d'une recherche, tel que 

cp ./bin/*  $GOROOT/bin

Ensuite, vous pouvez tester si le cryptogène existe par type de commande:

which cryptogen
1
chan zanway

Le problème principal se situe dans la dernière ligne d'erreur qui indique "Outil cryptogène non trouvé. Sortie"

Veuillez suivre les étapes ci-dessous pour résoudre ce problème.

  1. Téléchargez les fichiers binaires spécifiques à la plate-forme à l'aide de la commande

curl -sSL https://raw.githubusercontent.com/hyperledger/fabric/v1.0.5/scripts/bootstrap.sh | bash -s 1.0.5

Une fois que vous exécutez la commande, différents outils tels que cryptogen, configtxgen, etc. seront téléchargés dans le répertoire bin.

  1. ajoutez le répertoire bin à votre variable PATH en utilisant la commande ci-dessous

export PATH = $ PATH: [chemin vers le répertoire bin]

essayez maintenant de reconstruire le réseau. J'espère que ça aidera quelqu'un.

1
Anand Soni

Étape 1: cd fabric-samples

Étape 2: 

curl -sSL https://raw.githubusercontent.com/hyperledger/fabric/v1.0.5/scripts/bootstrap.sh | bash -s 1.0.5

Étape 3: cd fabric-samples/first-network

Étape 4: ./byfn.sh -m generate 

Vous verrez une brève description de ce qui va se passer, ainsi qu'une invite de ligne de commande oui/non. Répondez par un y ou appuyez sur la touche Retour pour exécuter l'action décrite.

0

la commande cryptogen se trouve dans le répertoire bin où vous avez installé (ou non compressé) l'archive de fabrique. Il vous suffit donc de mettre à jour votre variable $ PATH pour que le shell sache où se trouve la commande cryptogen ..__ Ce code devrait fonctionner:

export "$PATH:/<home>/<fabric>/bin"

<home> est votre répertoire personnel, tel que /home/sindelio Et <fabric> est l'emplacement d'installation de la structure.

0
Sindelio

Sauf si vous fermez le terminal, la solution suivante fonctionne:

export PATH = $ PATH: PATH_TO_FABRIC_SAMPLES/bin

0
Deepak Bhatta

Ont probablement raté cette étape

Télécharger les fichiers binaires spécifiques à la plate-forme

https://hyperledger-fabric.readthedocs.io/fr/release-1.1/samples.html

exécuter la commande dans cd Fabric-Samples

0
Vipul Dabhi

Vous n'êtes pas sûr de savoir si c'est toujours un problème ou non ..... Vous pouvez soit essayer d'utiliser ce que @Artem a déjà mentionné, Ou Vous pouvez ajouter le dossier ......fabric-samples/bin à votre chemin, qui contient les outils. . c'est le même dossier fabric-samples qui a le byfn.sh

0
adnan.c