在超级账本结构中启动自定义网络时出错

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

我正在尝试使用byfn网络建立自定义业务网络。

我的网络配置如下:

4个组织,每个组织有2个对等方,并且有5个具有Raft共识的订购节点。

  1. 开发人员[peer1,peer2]

  2. 财务[peer1,peer2]

  3. hr[peer1,peer2]

  4. 营销[peer1,peer2]

cryptoconfig.yaml

# Copyright IBM Corp. All Rights Reserved.
#
# SPDX-License-Identifier: Apache-2.0
#

OrdererOrgs:

  - Name: Orderer
    Domain: workspace
    EnableNodeOUs: true
    Template:
      Start: 1
      Count: 5


PeerOrgs:
  - Name: developers
    Domain: developers.workspace
    EnableNodeOUs: true
    Template:
      Start: 1
      Count: 2
    Users:
      Start: 1
      Count: 1

  - Name: finance
    Domain: finance.workspace
    EnableNodeOUs: true
    Template:
      Start: 1
      Count: 2
    Users:
      Count: 1

  - Name: hr
    Domain: hr.workspace
    EnableNodeOUs: true
    Template:
      Start: 1
      Count: 2
    Users:
      Start: 1
      Count: 1

  - Name: marketing
    Domain: marketing.workspace
    EnableNodeOUs: true
    Template:
      Start: 1
      Count: 2
    Users:
      Start: 1
      Count: 1

configtx.yaml

# Copyright IBM Corp. All Rights Reserved.
#
# SPDX-License-Identifier: Apache-2.0
#

---

Organizations:
    - &OrdererOrg
        Name: OrdererOrg
        ID: OrdererMSP
        MSPDir: crypto-config/ordererOrganizations/workspace/msp
        Policies:
            Readers:
                Type: Signature
                Rule: "OR('OrdererMSP.member')"
            Writers:
                Type: Signature
                Rule: "OR('OrdererMSP.member')"
            Admins:
                Type: Signature
                Rule: "OR('OrdererMSP.admin')"

    - &Org1
        Name: Org1MSP
        ID: Org1MSP
        MSPDir: crypto-config/peerOrganizations/developers.workspace/msp
        Policies:
            Readers:
                Type: Signature
                Rule: "OR('Org1MSP.admin', 'Org1MSP.peer', 'Org1MSP.client')"
            Writers:
                Type: Signature
                Rule: "OR('Org1MSP.admin', 'Org1MSP.client')"
            Admins:
                Type: Signature
                Rule: "OR('Org1MSP.admin')"
        AnchorPeers:
            - Host: peer1.developers.workspace
              Port: 7051

    - &Org2
        Name: Org2MSP
        ID: Org2MSP
        MSPDir: crypto-config/peerOrganizations/finance.workspace/msp
        Policies:
            Readers:
                Type: Signature
                Rule: "OR('Org2MSP.admin', 'Org2MSP.peer', 'Org2MSP.client')"
            Writers:
                Type: Signature
                Rule: "OR('Org2MSP.admin', 'Org2MSP.client')"
            Admins:
                Type: Signature
                Rule: "OR('Org2MSP.admin')"

        AnchorPeers:
            - Host: peer1.finance.workspace
              Port: 9051

    - &Org3
        Name: Org3MSP
        ID: Org3MSP
        MSPDir: crypto-config/peerOrganizations/hr.workspace/msp
        Policies:
            Readers:
                Type: Signature
                Rule: "OR('Org3MSP.admin', 'Org3MSP.peer', 'Org3MSP.client')"
            Writers:
                Type: Signature
                Rule: "OR('Org3MSP.admin', 'Org3MSP.client')"
            Admins:
                Type: Signature
                Rule: "OR('Org3MSP.admin')"

        AnchorPeers:
            - Host: peer1.hr.workspace
              Port: 11051

    - &Org4
        Name: Org4MSP
        ID: Org4MSP
        MSPDir: crypto-config/peerOrganizations/marketing.workspace/msp
        Policies:
            Readers:
                Type: Signature
                Rule: "OR('Org4MSP.admin', 'Org4MSP.peer', 'Org4MSP.client')"
            Writers:
                Type: Signature
                Rule: "OR('Org4MSP.admin', 'Org4MSP.client')"
            Admins:
                Type: Signature
                Rule: "OR('Org4MSP.admin')"

        AnchorPeers:
            - Host: peer1.marketing.workspace
              Port: 13051

Capabilities:
    Channel: &ChannelCapabilities
        V1_4_3: true
        V1_3: false
        V1_1: false
    Orderer: &OrdererCapabilities
        V1_4_2: true
        V1_1: false
    Application: &ApplicationCapabilities
        V1_4_2: true
        V1_3: false
        V1_2: false
        V1_1: false

Application: &ApplicationDefaults
    Organizations:
    Policies:
        Readers:
            Type: ImplicitMeta
            Rule: "ANY Readers"
        Writers:
            Type: ImplicitMeta
            Rule: "ANY Writers"
        Admins:
            Type: ImplicitMeta
            Rule: "MAJORITY Admins"

    Capabilities:
        <<: *ApplicationCapabilities

Orderer: &OrdererDefaults
    BatchTimeout: 2s
    BatchSize:
        MaxMessageCount: 10
        AbsoluteMaxBytes: 99 MB
        PreferredMaxBytes: 512 KB
    Organizations:
    Policies:
        Readers:
            Type: ImplicitMeta
            Rule: "ANY Readers"
        Writers:
            Type: ImplicitMeta
            Rule: "ANY Writers"
        Admins:
            Type: ImplicitMeta
            Rule: "MAJORITY Admins"
        BlockValidation:
            Type: ImplicitMeta
            Rule: "ANY Writers"

Channel: &ChannelDefaults
    Policies:
        Readers:
            Type: ImplicitMeta
            Rule: "ANY Readers"
        Writers:
            Type: ImplicitMeta
            Rule: "ANY Writers"
        Admins:
            Type: ImplicitMeta
            Rule: "MAJORITY Admins"

    Capabilities:
        <<: *ChannelCapabilities

Profiles:
    TwoOrgsOrdererGenesis:
        <<: *ChannelDefaults
        Orderer:
            <<: *OrdererDefaults
            Organizations:
                - *OrdererOrg
            Capabilities:
                <<: *OrdererCapabilities
        Consortiums:
            SampleConsortium:
                Organizations:
                    - *Org1
                    - *Org2
                    - *Org3
                    - *Org4
    TwoOrgsChannel:
        Consortium: SampleConsortium
        <<: *ChannelDefaults
        Application:
            <<: *ApplicationDefaults
            Organizations:
                - *Org1
                - *Org2
            Capabilities:
                <<: *ApplicationCapabilities

    SampleMultiNodeEtcdRaft:
        <<: *ChannelDefaults
        Capabilities:
            <<: *ChannelCapabilities
        Orderer:
            <<: *OrdererDefaults
            OrdererType: etcdraft
            EtcdRaft:
                Consenters:
                - Host: orderer1.workspace
                  Port: 7050
                  ClientTLSCert: crypto-config/ordererOrganizations/workspace/orderers/orderer1.workspace/tls/server.crt
                  ServerTLSCert: crypto-config/ordererOrganizations/workspace/orderers/orderer1.workspace/tls/server.crt
                - Host: orderer2.workspace
                  Port: 7050
                  ClientTLSCert: crypto-config/ordererOrganizations/workspace/orderers/orderer2.workspace/tls/server.crt
                  ServerTLSCert: crypto-config/ordererOrganizations/workspace/orderers/orderer2.workspace/tls/server.crt
                - Host: orderer3.workspace
                  Port: 7050
                  ClientTLSCert: crypto-config/ordererOrganizations/workspace/orderers/orderer3.workspace/tls/server.crt
                  ServerTLSCert: crypto-config/ordererOrganizations/workspace/orderers/orderer3.workspace/tls/server.crt
                - Host: orderer4.workspace
                  Port: 7050
                  ClientTLSCert: crypto-config/ordererOrganizations/workspace/orderers/orderer4.workspace/tls/server.crt
                  ServerTLSCert: crypto-config/ordererOrganizations/workspace/orderers/orderer4.workspace/tls/server.crt
                - Host: orderer5.workspace
                  Port: 7050
                  ClientTLSCert: crypto-config/ordererOrganizations/workspace/orderers/orderer5.workspace/tls/server.crt
                  ServerTLSCert: crypto-config/ordererOrganizations/workspace/orderers/orderer5.workspace/tls/server.crt
            Addresses:
                - orderer1.workspace:7050
                - orderer2.workspace:7050
                - orderer3.workspace:7050
                - orderer4.workspace:7050
                - orderer5.workspace:7050

            Organizations:
            - *OrdererOrg
            Capabilities:
                <<: *OrdererCapabilities
        Application:
            <<: *ApplicationDefaults
            Organizations:
            - <<: *OrdererOrg
        Consortiums:
            SampleConsortium:
                Organizations:
                - *Org1
                - *Org2

此外,我还通过了byfn网络中的​​docker-compose文件进行了修改。我已将docker-compose-base.yaml,peer-base.yaml和docker-compose-etcdraft2.yaml中声明的所有服务组合到单个docker-compose.yaml文件中。我认为这是我做错事的地方。

# Copyright IBM Corp. All Rights Reserved.
#
# SPDX-License-Identifier: Apache-2.0
#

version: '2'

volumes:
  orderer1.workspace:
  orderer2.workspace:
  orderer3.workspace:
  orderer4.workspace:
  orderer5.workspace:
  peer1.developers.workspace:
  peer2.developers.workspace:
  peer1.finance.workspace:
  peer2.finance.workspace:
  peer1.hr.workspace:
  peer2.hr.workspace:
  peer1.marketing.workspace:
  peer2.marketing.workspace:

networks:
  byfn:

services:
  orderer-base:
    image: hyperledger/fabric-orderer:$IMAGE_TAG
    environment:
      - FABRIC_LOGGING_SPEC=INFO
      - ORDERER_GENERAL_LISTENADDRESS=0.0.0.0
      - ORDERER_GENERAL_GENESISMETHOD=file
      - ORDERER_GENERAL_GENESISFILE=/var/hyperledger/orderer/orderer.genesis.block
      - ORDERER_GENERAL_LOCALMSPID=OrdererMSP
      - ORDERER_GENERAL_LOCALMSPDIR=/var/hyperledger/orderer/msp
      # enabled TLS
      - ORDERER_GENERAL_TLS_ENABLED=true
      - ORDERER_GENERAL_TLS_PRIVATEKEY=/var/hyperledger/orderer/tls/server.key
      - ORDERER_GENERAL_TLS_CERTIFICATE=/var/hyperledger/orderer/tls/server.crt
      - ORDERER_GENERAL_TLS_ROOTCAS=[/var/hyperledger/orderer/tls/ca.crt]
      - ORDERER_KAFKA_TOPIC_REPLICATIONFACTOR=1
      - ORDERER_KAFKA_VERBOSE=true
      - ORDERER_GENERAL_CLUSTER_CLIENTCERTIFICATE=/var/hyperledger/orderer/tls/server.crt
      - ORDERER_GENERAL_CLUSTER_CLIENTPRIVATEKEY=/var/hyperledger/orderer/tls/server.key
      - ORDERER_GENERAL_CLUSTER_ROOTCAS=[/var/hyperledger/orderer/tls/ca.crt]
    working_dir: /opt/gopath/src/github.com/hyperledger/fabric
    command: orderer

  orderer1.workspace:
    extends:
      service: orderer-base
    container_name: orderer1.workspace
    networks:
    - byfn
    volumes:
        - ./channel-artifacts/genesis.block:/var/hyperledger/orderer/orderer.genesis.block
        - ./crypto-config/ordererOrganizations/workspace/orderers/orderer1.workspace/msp:/var/hyperledger/orderer/msp
        - ./crypto-config/ordererOrganizations/workspace/orderers/orderer1.workspace/tls/:/var/hyperledger/orderer/tls
        - orderer1.workspace:/var/hyperledger/production/orderer
    ports:
    - 7050:7050

  orderer2.workspace:
    extends:
      service: orderer-base
    container_name: orderer2.workspace
    networks:
    - byfn
    volumes:
        - ./channel-artifacts/genesis.block:/var/hyperledger/orderer/orderer.genesis.block
        - ./crypto-config/ordererOrganizations/workspace/orderers/orderer2.workspace/msp:/var/hyperledger/orderer/msp
        - ./crypto-config/ordererOrganizations/workspace/orderers/orderer2.workspace/tls/:/var/hyperledger/orderer/tls
        - orderer2.workspace:/var/hyperledger/production/orderer
    ports:
    - 8050:7050

  orderer3.workspace:
    extends:
      service: orderer-base
    container_name: orderer3.workspace
    networks:
    - byfn
    volumes:
        - ./channel-artifacts/genesis.block:/var/hyperledger/orderer/orderer.genesis.block
        - ./crypto-config/ordererOrganizations/workspace/orderers/orderer3.workspace/msp:/var/hyperledger/orderer/msp
        - ./crypto-config/ordererOrganizations/workspace/orderers/orderer3.workspace/tls/:/var/hyperledger/orderer/tls
        - orderer3.workspace:/var/hyperledger/production/orderer
    ports:
    - 9050:7050


  orderer4.workspace:
    extends:
      service: orderer-base
    container_name: orderer4.workspace
    networks:
    - byfn
    volumes:
        - ./channel-artifacts/genesis.block:/var/hyperledger/orderer/orderer.genesis.block
        - ./crypto-config/ordererOrganizations/workspace/orderers/orderer4.workspace/msp:/var/hyperledger/orderer/msp
        - ./crypto-config/ordererOrganizations/workspace/orderers/orderer4.workspace/tls/:/var/hyperledger/orderer/tls
        - orderer4.workspace:/var/hyperledger/production/orderer
    ports:
    - 10050:7050

  orderer5.workspace:
    extends:
      service: orderer-base
    container_name: orderer5.workspace
    networks:
    - byfn
    volumes:
        - ./channel-artifacts/genesis.block:/var/hyperledger/orderer/orderer.genesis.block
        - ./crypto-config/ordererOrganizations/workspace/orderers/orderer5.workspace/msp:/var/hyperledger/orderer/msp
        - ./crypto-config/ordererOrganizations/workspace/orderers/orderer5.workspace/tls/:/var/hyperledger/orderer/tls
        - orderer5.workspace:/var/hyperledger/production/orderer
    ports:
    - 11050:7050


  peer-base:
    image: hyperledger/fabric-peer:$IMAGE_TAG
    environment:
      - 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
      - FABRIC_LOGGING_SPEC=INFO
      #- FABRIC_LOGGING_SPEC=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
    working_dir: /opt/gopath/src/github.com/hyperledger/fabric/peer
    command: peer node start


  peer1.developers.workspace:
    container_name: peer1.developers.workspace
    extends:
      service: peer-base
    environment:
      - CORE_PEER_ID=peer1.developers.workspace
      - CORE_PEER_ADDRESS=peer1.developers.workspace:7051
      - CORE_PEER_LISTENADDRESS=0.0.0.0:7051
      - CORE_PEER_CHAINCODEADDRESS=peer1.developers.workspace:7052
      - CORE_PEER_CHAINCODELISTENADDRESS=0.0.0.0:7052
      - CORE_PEER_GOSSIP_BOOTSTRAP=peer2.developers.workspace:8051
      - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer1.developers.workspace:7051
      - CORE_PEER_LOCALMSPID=Org1MSP
    volumes:
        - /var/run/:/host/var/run/
        - ../crypto-config/peerOrganizations/developers.workspace/peers/peer1.developers.workspace/msp:/etc/hyperledger/fabric/msp
        - ../crypto-config/peerOrganizations/developers.workspace/peers/peer1.developers.workspace/tls:/etc/hyperledger/fabric/tls
        - peer1.developers.workspace:/var/hyperledger/production
    ports:
      - 7051:7051
    networks:
      - byfn

  peer2.developers.workspace:
    container_name: peer2.developers.workspace
    extends:
      service: peer-base
    environment:
      - CORE_PEER_ID=peer2.developers.workspace
      - CORE_PEER_ADDRESS=peer2.developers.workspace:8051
      - CORE_PEER_LISTENADDRESS=0.0.0.0:8051
      - CORE_PEER_CHAINCODEADDRESS=peer2.developers.workspace:8052
      - CORE_PEER_CHAINCODELISTENADDRESS=0.0.0.0:7052
      - CORE_PEER_GOSSIP_BOOTSTRAP=peer1.developers.workspace:7051
      - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer2.developers.workspace:8051
      - CORE_PEER_LOCALMSPID=Org1MSP
    volumes:
        - /var/run/:/host/var/run/
        - ../crypto-config/peerOrganizations/developers.workspace/peers/peer2.developers.workspace/msp:/etc/hyperledger/fabric/msp
        - ../crypto-config/peerOrganizations/developers.workspace/peers/peer2.developers.workspace/tls:/etc/hyperledger/fabric/tls
        - peer2.developers.workspace:/var/hyperledger/production
    ports:
      - 8051:8051
    networks:
      - byfn

  peer1.finance.workspace:
    container_name: peer1.finance.workspace
    extends:
      service: peer-base
    environment:
      - CORE_PEER_ID=peer1.finance.workspace
      - CORE_PEER_ADDRESS=peer1.finance.workspace:9051
      - CORE_PEER_LISTENADDRESS=0.0.0.0:9051
      - CORE_PEER_CHAINCODEADDRESS=peer1.finance.workspace:9052
      - CORE_PEER_CHAINCODELISTENADDRESS=0.0.0.0:9052
      - CORE_PEER_GOSSIP_BOOTSTRAP=peer2.finance.workspace:10051
      - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer1.finance.workspace:9051
      - CORE_PEER_LOCALMSPID=Org1MSP
    volumes:
        - /var/run/:/host/var/run/
        - ../crypto-config/peerOrganizations/finance.workspace/peers/peer1.finance.workspace/msp:/etc/hyperledger/fabric/msp
        - ../crypto-config/peerOrganizations/finance.workspace/peers/peer1.finance.workspace/tls:/etc/hyperledger/fabric/tls
        - peer1.finance.workspace:/var/hyperledger/production
    ports:
      - 9051:9051
    networks:
      - byfn

  peer2.finance.workspace:
    container_name: peer2.finance.workspace
    extends:
      service: peer-base
    environment:
      - CORE_PEER_ID=peer2.finance.workspace
      - CORE_PEER_ADDRESS=peer2.finance.workspace:10051
      - CORE_PEER_LISTENADDRESS=0.0.0.0:10051
      - CORE_PEER_CHAINCODEADDRESS=peer2.finance.workspace:10052
      - CORE_PEER_CHAINCODELISTENADDRESS=0.0.0.0:10052
      - CORE_PEER_GOSSIP_BOOTSTRAP=peer1.finance.workspace:9051
      - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer2.finance.workspace:10051
      - CORE_PEER_LOCALMSPID=Org1MSP
    volumes:
        - /var/run/:/host/var/run/
        - ../crypto-config/peerOrganizations/finance.workspace/peers/peer2.finance.workspace/msp:/etc/hyperledger/fabric/msp
        - ../crypto-config/peerOrganizations/finance.workspace/peers/peer2.finance.workspace/tls:/etc/hyperledger/fabric/tls
        - peer2.finance.workspace:/var/hyperledger/production
    ports:
      - 10051:10051
    networks:
      - byfn

  peer1.hr.workspace:
    container_name: peer1.hr.workspace
    extends:
      service: peer-base
    environment:
      - CORE_PEER_ID=peer1.hr.workspace
      - CORE_PEER_ADDRESS=peer1.hr.workspace:11051
      - CORE_PEER_LISTENADDRESS=0.0.0.0:11051
      - CORE_PEER_CHAINCODEADDRESS=peer1.hr.workspace:11052
      - CORE_PEER_CHAINCODELISTENADDRESS=0.0.0.0:11052
      - CORE_PEER_GOSSIP_BOOTSTRAP=peer2.hr.workspace:12051
      - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer1.hr.workspace:11051
      - CORE_PEER_LOCALMSPID=Org1MSP
    volumes:
        - /var/run/:/host/var/run/
        - ../crypto-config/peerOrganizations/hr.workspace/peers/peer1.hr.workspace/msp:/etc/hyperledger/fabric/msp
        - ../crypto-config/peerOrganizations/hr.workspace/peers/peer1.hr.workspace/tls:/etc/hyperledger/fabric/tls
        - peer1.hr.workspace:/var/hyperledger/production
    ports:
      - 11051:11051
    networks:
      - byfn

  peer2.hr.workspace:
    container_name: peer2.hr.workspace
    extends:
      service: peer-base
    environment:
      - CORE_PEER_ID=peer2.hr.workspace
      - CORE_PEER_ADDRESS=peer2.hr.workspace:12051
      - CORE_PEER_LISTENADDRESS=0.0.0.0:12051
      - CORE_PEER_CHAINCODEADDRESS=peer2.hr.workspace:12052
      - CORE_PEER_CHAINCODELISTENADDRESS=0.0.0.0:12052
      - CORE_PEER_GOSSIP_BOOTSTRAP=peer1.hr.workspace:11051
      - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer2.hr.workspace:12051
      - CORE_PEER_LOCALMSPID=Org1MSP
    volumes:
        - /var/run/:/host/var/run/
        - ../crypto-config/peerOrganizations/hr.workspace/peers/peer2.hr.workspace/msp:/etc/hyperledger/fabric/msp
        - ../crypto-config/peerOrganizations/hr.workspace/peers/peer2.hr.workspace/tls:/etc/hyperledger/fabric/tls
        - peer2.hr.workspace:/var/hyperledger/production
    ports:
      - 12051:12051
    networks:
      - byfn

  peer1.marketing.workspace:
    container_name: peer1.marketing.workspace
    extends:
      service: peer-base
    environment:
      - CORE_PEER_ID=peer1.marketing.workspace
      - CORE_PEER_ADDRESS=peer1.marketing.workspace:13051
      - CORE_PEER_LISTENADDRESS=0.0.0.0:13051
      - CORE_PEER_CHAINCODEADDRESS=peer1.marketing.workspace:13052
      - CORE_PEER_CHAINCODELISTENADDRESS=0.0.0.0:13052
      - CORE_PEER_GOSSIP_BOOTSTRAP=peer2.marketing.workspace:14051
      - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer1.marketing.workspace:13051
      - CORE_PEER_LOCALMSPID=Org1MSP
    volumes:
        - /var/run/:/host/var/run/
        - ../crypto-config/peerOrganizations/marketing.workspace/peers/peer1.marketing.workspace/msp:/etc/hyperledger/fabric/msp
        - ../crypto-config/peerOrganizations/marketing.workspace/peers/peer1.marketing.workspace/tls:/etc/hyperledger/fabric/tls
        - peer1.marketing.workspace:/var/hyperledger/production
    ports:
      - 13051:13051
    networks:
      - byfn

  peer2.marketing.workspace:
    container_name: peer2.marketing.workspace
    extends:
      service: peer-base
    environment:
      - CORE_PEER_ID=peer2.marketing.workspace
      - CORE_PEER_ADDRESS=peer2.marketing.workspace:14051
      - CORE_PEER_LISTENADDRESS=0.0.0.0:14051
      - CORE_PEER_CHAINCODEADDRESS=peer2.marketing.workspace:14052
      - CORE_PEER_CHAINCODELISTENADDRESS=0.0.0.0:14052
      - CORE_PEER_GOSSIP_BOOTSTRAP=peer1.marketing.workspace:13051
      - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer2.marketing.workspace:14051
      - CORE_PEER_LOCALMSPID=Org1MSP
    volumes:
        - /var/run/:/host/var/run/
        - ../crypto-config/peerOrganizations/marketing.workspace/peers/peer2.marketing.workspace/msp:/etc/hyperledger/fabric/msp
        - ../crypto-config/peerOrganizations/marketing.workspace/peers/peer2.marketing.workspace/tls:/etc/hyperledger/fabric/tls
        - peer2.marketing.workspace:/var/hyperledger/production
    ports:
      - 14051:14051
    networks:
      - byfn


  cli:
    container_name: cli
    image: hyperledger/fabric-tools:$IMAGE_TAG
    tty: true
    stdin_open: true
    environment:
      - SYS_CHANNEL=$SYS_CHANNEL
      - GOPATH=/opt/gopath
      - CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
      #- FABRIC_LOGGING_SPEC=DEBUG
      - FABRIC_LOGGING_SPEC=INFO
      - CORE_PEER_ID=cli
      - CORE_PEER_ADDRESS=peer1.developers.workspace:7051
      - CORE_PEER_LOCALMSPID=Org1MSP
      - CORE_PEER_TLS_ENABLED=true
      - CORE_PEER_TLS_CERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/developers.workspace/peers/peer1.developers.workspace/tls/server.crt
      - CORE_PEER_TLS_KEY_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/developers.workspace/peers/peer1.developers.workspace/tls/server.key
      - CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/developers.workspace/peers/peer1.developers.workspace/tls/ca.crt
      - CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/developers.workspace/users/[email protected]/msp
    working_dir: /opt/gopath/src/github.com/hyperledger/fabric/peer
    command: /bin/bash
    volumes:
        - /var/run/:/host/var/run/
        - ./../chaincode/:/opt/gopath/src/github.com/chaincode
        - ./crypto-config:/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/
        - ./scripts:/opt/gopath/src/github.com/hyperledger/fabric/peer/scripts/
        - ./channel-artifacts:/opt/gopath/src/github.com/hyperledger/fabric/peer/channel-artifacts
    depends_on:
      - orderer1.workspace
      - orderer2.workspace
      - orderer3.workspace
      - orderer4.workspace
      - orderer5.workspace
      - peer1.developers.workspace
      - peer2.developers.workspace
      - peer1.finance.workspace
      - peer2.finance.workspace
      - peer1.hr.workspace
      - peer2.hr.workspace
      - peer1.marketing.workspace
      - peer2.marketing.workspace
    networks:
      - byfn

我已经按照this教程中的所有步骤进行操作。我已经生成了加密材料,生成了创世块,更新了锚点,一切都进行得很顺利。

但是当我运行时使用docker-compose -f docker-compose.yaml up -d启动网络时,只有排序节点启动,所有对等容器都退出了。当我看到该退出的对等容器的日志时,发现以下错误。

2019-11-18 03:30:11.607 UTC [main] InitCmd -> ERRO 001 Cannot run peer because error when setting up MSP of type bccsp from directory /etc/hyperledger/fabric/msp: could not load a valid signer certificate from directory /etc/hyperledger/fabric/msp/signcerts: stat /etc/hyperledger/fabric/msp/signcerts: no such file or directory

谁能指出我出了问题的地方吗?

hyperledger-fabric hyperledger
1个回答
0
投票

此错误是因为证书没有复制到/etc/hyperledger/fabric/msp。在对等配置中,订购者../crypto-config使用的是./crypto-config。尝试ls ../crypto-config/peerOrganizations/developers.workspace/peers/peer2.developers.workspace/msp

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