在本地计算机上没有Docker的Hyperledger Fabric

时间:2018-07-10 07:00:11

标签: docker hyperledger-fabric

我是Hyperledger Fabric的新手。我需要在本地计算机(Ubuntu 16)上设置Hypeledger Fabric开发环境。 将Fabric进行docker化后,我想知道如何在本地计算机上进行设置。我尝试搜索一种教程,但没有一个。

我正在制作一个生产级项目,所以我不能依赖Docker,请指导我进行本地计算机设置(与docker无关)。

Hyperledger Fabric文档非常易于使用,但是它不提供有关在本地设置环境的信息。先前有关堆栈溢出的问题没有达到我的目的。

4 个答案:

答案 0 :(得分:4)

基于此Fabric教程,您可以从Shell脚本和docker-compose文件中提取这些命令,然后在本地计算机上运行它们。

首先,您必须具有两个配置文件:crypto-config.yamlconfigtx.yaml。您可以在以下目录中找到它们:fabric-samples/first-network/

使用crypto-config.yaml生成公钥,私钥,证书等。

正在使用configtx.yaml文件来生成创世块等等。

您可以使用configtxgencryptogen命令手动生成证书/密钥和各种配置工件。

1)

# cryptogen generate --config=./crypto-config.yaml

2)

# export FABRIC_CFG_PATH=$PWD
# mkdir channel-artifacts
# configtxgen -profile TwoOrgsOrdererGenesis -outputBlock ./channel-artifacts/genesis.block
# export CHANNEL_NAME=mychannel
# configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID $CHANNEL_NAME
# configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org1MSPanchors.tx -channelID $CHANNEL_NAME -asOrg Org1MSP
# configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org2MSPanchors.tx -channelID $CHANNEL_NAME -asOrg Org2MSP

3)配置orderer.yamlcore.yaml,可以从this

获取

4)使用真实密钥和证书更新这两个文件。

5)

# orderer start

6)

# export set FABRIC_CFG_PATH = ${PWD}
# peer node start >> peerlog.log 2>&1 &

到目前为止,结构网络已打开。然后,您可以创建并加入频道,或执行其他操作。

如果您对此有任何疑问,请告诉我。祝你好运。

答案 1 :(得分:2)

不确定您是否仍在寻找,但我整理了一个项目https://github.com/chainforce/native-fabric,该项目在OSX上原生使用Fabric,甚至没有Chaincode容器。示例链代码用Go编写,并与Go Plugin一起作为系统链代码进行部署。您可以从Fabric文档中找到有关System Chaincode的更多信息,但是基本上它可以完成基于Docker的chaincode可以完成的工作,甚至更多。

答案 2 :(得分:0)

deploy to production必须将Fabric与Docker一起使用。出于测试目的,您可以遵循this来获得无docker的本地版本,并可以使用this来获得无docker的浏览器版本。

答案 3 :(得分:0)

如果在Ubuntu上编译了Fabric模块的对等点和订购者,则可以在没有Docker的情况下在本地计算机上设置Fabric网络。实际上,在生产中建议使用本地编译。