This页面说:
Hyperledger Fabric的许多语言都使用Go编程语言 组件。
需要1.11.x版。
但是如果我要在Node.js中编写Chaincode,我是否仍需要安装Go?如果是,为什么?
答案 0 :(得分:0)
TL; DR:如果要在NodeJ中编写链码,则无需安装Go。实际上,即使您在Go中编写chaincode,也无需安装Go就可以摆脱困境。这是因为无论您是否喜欢,Go都会隐式安装在Docker容器上。
令我惊讶的是,在我所知甚至没有安装Go的机器上,我能够运行描述为here的fabcar示例(语言设置为Go),而没有任何问题。
那怎么可能呢?看起来docker-compose.yml中的相关docker映像中内置了Go:
从下面可以看到,Go将会在/opt/go
的容器上安装并可用,即使在Hyperledger启动过程中没有明确安装Go也是如此。
siddjain@goldenrwr-ca0:~/fabric-samples-v13/fabcar$ docker exec -it 76537088e078 bash
root@76537088e078:/opt/gopath/src/github.com/hyperledger/fabric/peer# ls /opt/go
AUTHORS LICENSE VERSION blog lib robots.txt
CONTRIBUTING.md PATENTS api doc misc src
CONTRIBUTORS README.md bin favicon.ico pkg test
root@76537088e078:/opt/gopath/src/github.com/hyperledger/fabric/peer# ls /opt/go/bin
go godoc gofmt