Я работаю с учебником Composer «Развертывание бизнес-сети блокчейна Hyperledger Composer в Hyperledger Fabric», пытаясь настроить собственную сеть.
Единственное отличие состоит в том, что я с самого начала интегрировал третью организацию, и когда я вызываю следующую команду ./byfn.sh -m up -s couchdb -a
, я не позволяю цепочечному коду установить связь с пирами. Потому что я собираюсь потом установить свой собственный bna с композитором. (Я не совсем уверен в этом шаге, возможно, я ошибся.)
Двигаясь дальше по учебнику, когда я получаю команду запуска сети композитора, я получаю странную ошибку, что нигде не могу найти ссылку.
composer network start -c PeerAdmin@testManager -n test-network -V 0.0.10 -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json -A andreim -C andreim/admin-pub.pem -A andreis -C andreis/admin-pub.pem -A andreii -C andreii/admin-pub.pem
Error: Error trying to start business network. Error: Parameter must be a ProposalResponse Object
Любая идея была бы действительно великолепна.
С уважением.
Обновление информации
Ткань 1,2
Композитор v0.19.12
Канал создан, при этом одноранговые узлы успешно присоединяются и обновляют одноранговые одноранговые узлы.
Это политика одобрения:
{
"identities": [
{
"role": {
"name": "member",
"mspId": "ManagerMSP"
}
},
{
"role": {
"name": "member",
"mspId": "SponsorMSP"
}
},
{
"role": {
"name": "member",
"mspId": "InsurerMSP"
}
}
],
"policy": {
"3-of": [
{
"signed-by": 0
},
{
"signed-by": 1
},
{
"signed-by": 2
}
]
}
}
Это профиль подключения:
{
"name": "test-network",
"x-type": "hlfv1",
"version": "1.0.0",
"channels": {
"mychannel": {
"orderers": [
"orderer.test.com"
],
"peers": {
"peer0.manager.test.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"ledgerQuery": true,
"eventSource": true
},
"peer1.manager.test.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"ledgerQuery": true,
"eventSource": true
},
"peer0.sponsor.test.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"ledgerQuery": true,
"eventSource": true
},
"peer1.sponsor.test.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"ledgerQuery": true,
"eventSource": true
},
"peer0.insurer.test.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"ledgerQuery": true,
"eventSource": true
},
"peer1.insurer.test.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"ledgerQuery": true,
"eventSource": true
}
}
}
},
"organizations": {
"Manager": {
"mspid": "ManagerMSP",
"peers": [
"peer0.manager.test.com",
"peer1.manager.test.com"
],
"certificateAuthorities": [
"ca.manager.test.com"
]
},
"Sponsor": {
"mspid": "SponsorMSP",
"peers": [
"peer0.sponsor.test.com",
"peer1.sponsor.test.com"
],
"certificateAuthorities": [
"ca.sponsor.test.com"
]
},
"Insurer": {
"mspid": "InsurerMSP",
"peers": [
"peer0.insurer.test.com",
"peer1.insurer.test.com"
],
"certificateAuthorities": [
"ca.insurer.test.com"
]
}
},
"orderers": {
"orderer.test.com": {
"url": "grpcs://localhost:7050",
"grpcOptions": {
"ssl-target-name-override": "orderer.test.com"
},
"tlsCACerts": {
"pem": "INSERT_ORDERER_CA_CERT"
}
}
},
"peers": {
"peer0.manager.test.com": {
"url": "grpcs://localhost:7051",
"eventUrl": "grpcs://localhost:7053",
"grpcOptions": {
"ssl-target-name-override": "peer0.manager.test.com"
},
"tlsCACerts": {
"pem": "INSERT_MANAGER_CA_CERT"
}
},
"peer1.manager.test.com": {
"url": "grpcs://localhost:8051",
"eventUrl": "grpcs://localhost:8053",
"grpcOptions": {
"ssl-target-name-override": "peer1.manager.test.com"
},
"tlsCACerts": {
"pem": "INSERT_MANAGER_CA_CERT"
}
},
"peer0.sponsor.test.com": {
"url": "grpcs://localhost:9051",
"eventUrl": "grpcs://localhost:9053",
"grpcOptions": {
"ssl-target-name-override": "peer0.sponsor.test.com"
},
"tlsCACerts": {
"pem": "INSERT_SPONSOR_CA_CERT"
}
},
"peer1.sponsor.test.com": {
"url": "grpcs://localhost:10051",
"eventUrl": "grpcs://localhost:10053",
"grpcOptions": {
"ssl-target-name-override": "peer1.sponsor.test.com"
},
"tlsCACerts": {
"pem": "INSERT_SPONSOR_CA_CERT"
}
},
"peer0.insurer.test.com": {
"url": "grpcs://localhost:11051",
"eventUrl": "grpcs://localhost:11053",
"grpcOptions": {
"ssl-target-name-override": "peer0.insurer.test.com"
},
"tlsCACerts": {
"pem": "INSERT_INSURER_CA_CERT"
}
},
"peer1.insurer.test.com": {
"url": "grpcs://localhost:12051",
"eventUrl": "grpcs://localhost:12053",
"grpcOptions": {
"ssl-target-name-override": "peer1.insurer.test.com"
},
"tlsCACerts": {
"pem": "INSERT_INSURER_CA_CERT"
}
}
},
"certificateAuthorities": {
"ca.manager.test.com": {
"url": "https://localhost:7054",
"caName": "ca-manager",
"httpOptions": {
"verify": false
}
},
"ca.sponsor.test.com": {
"url": "https://localhost:8054",
"caName": "ca-sponsor",
"httpOptions": {
"verify": false
}
},
"ca.insurer.test.com": {
"url": "https://localhost:9054",
"caName": "ca-insurer",
"httpOptions": {
"verify": false
}
}
}
}