在Fabric 2.0上出现grpc错误,容器无法看到位于没有互联网的盒子中musl文件夹中的grpc_node.node

问题描述 投票:0回答:1

我正在一个没有互联网的盒子上工作。通过ftp进入所有必需的docker映像,go文件等后,成功在fabcar中完成了./byfn.sh和./startFabric.sh。但是我在执行./startFabric.sh打字稿时遇到了问题,初始错误如下

错误

/ chaincode / output / node_modules / grpc / src / node / extension_binary / node-v72-linux-x64-musl / grpc_node.node“(未找到)

npm install和npm run build成功运行,在/ chanicode / fabcar / typescript中没有错误,并且文件grpc_node.node在node_modules中的正确目录内。因此,似乎容器找不到它。在/ var / lib / docker / overlay / xxxxxxxxxxxxxx / chaincode / ouptut / node_modules / grpc / src / node / extension_binary / node-v72-linux-x64-musl文件夹中丢失。

请帮助。

hyperledger-fabric grpc-node
1个回答
0
投票

此错误很可能发生,因为您在与运行代码不同的环境中运行npm install。解决方法是运行另一个npm命令,以为运行代码的平台下载gRPC二进制文件。基于该错误消息,您正在x64处理器上的Alpine Linux(使用musl libc)上的节点12上运行代码。因此,在运行npm install之后,运行以下命令:

npm rebuild --target=12.0.0 --target_arch=x64 --target_platform=linux --target_libc=musl

然后剩下的部署工作就可以了。我将目标版本指定为“ 12.0.0”。您还可以使用部署中使用的特定版本。重要的是主要版本匹配。

© www.soinside.com 2019 - 2024. All rights reserved.