Cannot run peer because cannot init crypto

霸气de小男生 提交于 2019-11-27 08:13:42

问题


I want to run the facbar-samples on windows10,reference the http://hyperledger-fabric.readthedocs.io/en/latest/write_first_app.html but get the error:

$ ./startFabric.sh
orderer.example.com is up-to-date
couchdb is up-to-date
peer0.org1.example.com is up-to-date
cli is up-to-date
2017-07-05 08:17:06.550 UTC [main] main -> ERRO 001 Cannot run peer because 
cannot init crypto, missing /etc/hyperledger/fabric/C:/Program 
Files/Git/etc/hyperledger/msp/users/Admin@org1.example.com/msp folder

some that I have installed:

$ npm -v
5.0.4
$ node -v
v6.11.0
$ curl -V
curl 7.54.0 (x86_64-w64-mingw32) libcurl/7.54.0 OpenSSL/1.0.2l zlib/1.2.11 
libssh2/1.8.0 nghttp2/1.23.1 librtmp/2.3
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 
pop3s rtmp rtsp scp sftp smtp smtps telnet tftp
Features: IPv6 Largefile SSPI Kerberos SPNEGO NTLM SSL libz TLS-SRP HTTP2 
HTTPS-proxy Metalink

$ docker --version
Docker version 17.06.0-ce, build 02c1d87

$ docker-compose --version
docker-compose version 1.14.0, build c7bdf9e3

$ git --version
git version 2.13.1.windows.2

Please help ,Thanks.


回答1:


This is a problem with mingw64 which is messing with the filepaths. The solution is to set the following environment variable before running startFabric.sh :

export MSYS_NO_PATHCONV=1

A fix was just submitted to fabric to do that for you so if you pull the latest version from the master branch it should work. Otherwise, just set that variable and that should solve your problem.

Arnaud




回答2:


The problem is incorrect path to certificates (look for windows path string between /fabric and /etc) /etc/hyperledger/fabric/C:/ProgramFiles/Git/etc/hyperledger/msp/users/Admin@org1.example.com/msp

You can try next :

  • add path to certificate as environment variable to docker compose file at peer section
  • start network using docker-compose -f "path_to_file"
  • manually run instructions in startFabric.sh at peer and cli.
  • then you can successfully run node query.js for testing network work



回答3:


The double // in the path will fix this. Update in all the places where docker exec command used for e.g. MSPCONFIGPATH=//etc/hyperledger....

Also certificates have to be generated before you could get your network running




回答4:


Do this ./byfn.sh -m down first and then run ./byfn.sh generate then ./byfn.sh -m up




回答5:


Before you run the fabcar-samples, I think that you have to execute some steps from the "Building Your First Network" chapter. It seems that you haven't got the required certificates to start the network. Also, you should generate the genesis block, the channel configuration transaction and the anchor peers.

You can do it by executing the ./byfn.sh -m generate command. For more information: http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html#generate-network-artifacts




回答6:


Could someone explain further what this means:

"add path to certificate as environment variable to docker compose file at peer section"

What certificate?

@Vlad



来源:https://stackoverflow.com/questions/44921180/cannot-run-peer-because-cannot-init-crypto

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!