我跟随 - http://hyperledger-fabric.readthedocs.io/en/release/build_network.html
手动配置我在4个对等端安装了链代码
1. peer0.org1.example.com(anchor peer)
2. peer1.org1.example.com
3. peer0.org2.example.com(anchor peer)
4. peer1.org2.example.com
在ID为"第一个"。
的频道中现在,当我尝试实例化链代码时,我收到错误:
答案 0 :(得分:0)
因此,这是环境变量COMPOSE_PROJECT_NAME
的问题。我通过在项目文件夹中添加.env
文件并将环境变量COMPOSE_PROJECT_NAME
设置为net
来解决此问题。
如果这样做无效,您还可以检查peer-base.yaml
文件中的变量CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE
,看看它是否设置正确。您的peer-base.yaml
文件应该具有如下所示的环境块:
- CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
# the following setting starts chaincode containers on the same
# bridge network as the peers
# https://docs.docker.com/compose/networking/
- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=${COMPOSE_PROJECT_NAME}_byfn
#- CORE_LOGGING_LEVEL=ERROR
- CORE_LOGGING_LEVEL=DEBUG
- CORE_PEER_TLS_ENABLED=true
- CORE_PEER_GOSSIP_USELEADERELECTION=true
- CORE_PEER_GOSSIP_ORGLEADER=false
- CORE_PEER_PROFILE_ENABLED=true
- CORE_PEER_TLS_CERT_FILE=/etc/hyperledger/fabric/tls/server.crt
- CORE_PEER_TLS_KEY_FILE=/etc/hyperledger/fabric/tls/server.key
- CORE_PEER_TLS_ROOTCERT_FILE=/etc/hyperledger/fabric/tls/ca.crt
答案 1 :(得分:0)
您的COMPOSER_PROJECT_NAME
未设置。
启动Docker容器时,
更新此命令
CHANNEL_NAME=$CHANNEL_NAME docker-compose -f docker-compose-cli.yaml up -d
使用以下命令:
CHANNEL_NAME=$CHANNEL_NAME IMAGE_TAG=latest COMPOSER_PROJECT_NAME=byfn docker-compose -f docker-compose-cli.yaml up -d