• DOCKER的整体配置文件docker-compose-cli.yaml和docker-compose-base.yaml


    docker-compose-cli.yaml

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

    version: '2'

    volumes:
    orderer.example.com:
    peer0.org1.example.com:
    peer1.org1.example.com:
    peer0.org2.example.com:
    peer1.org2.example.com:

    networks:
    byfn:

    services:

    orderer.example.com:
    extends: #依赖,继承的一个文件
    file: base/docker-compose-base.yaml #在base目录中,这个在提供的first文件中
    service: orderer.example.com #覆盖继承的名字
    container_name: orderer.example.com
    networks:
    - byfn

    peer0.org1.example.com: #继承
    container_name: peer0.org1.example.com
    extends:
    file: base/docker-compose-base.yaml
    service: peer0.org1.example.com
    networks:
    - byfn

    peer1.org1.example.com:
    container_name: peer1.org1.example.com
    extends:
    file: base/docker-compose-base.yaml
    service: peer1.org1.example.com
    networks:
    - byfn

    peer0.org2.example.com:
    container_name: peer0.org2.example.com
    extends:
    file: base/docker-compose-base.yaml
    service: peer0.org2.example.com
    networks:
    - byfn

    peer1.org2.example.com:
    container_name: peer1.org2.example.com
    extends:
    file: base/docker-compose-base.yaml
    service: peer1.org2.example.com
    networks:
    - byfn

    cli:
    container_name: cli
    image: hyperledger/fabric-tools:$IMAGE_TAG
    tty: true
    stdin_open: true
    environment:
    - GOPATH=/opt/gopath
    - CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
    #- CORE_LOGGING_LEVEL=DEBUG
    - CORE_LOGGING_LEVEL=INFO
    - CORE_PEER_ID=cli
    - CORE_PEER_ADDRESS=peer0.org1.example.com: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/org1.example.com/peers/peer0.org1.example.com/tls/server.crt
    - CORE_PEER_TLS_KEY_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key
    - CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt
    - CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/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:
    - orderer.example.com
    - peer0.org1.example.com
    - peer1.org1.example.com
    - peer0.org2.example.com
    - peer1.org2.example.com
    networks:
    - byfn

    docker-compose-base.yaml:

    version: '2'

    services:

    orderer.example.com: #排序节点服务
    container_name: orderer.example.com
    image: hyperledger/fabric-orderer:$IMAGE_TAG #排序节点的镜像,Image——tag需要修改
    environment: #排序节点运行中,使用的环境变量
    - ORDERER_GENERAL_LOGLEVEL=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]
    working_dir: /opt/gopath/src/github.com/hyperledger/fabric #排序节点的路径
    command: orderer
    volumes: #映射
    - ../channel-artifacts/genesis.block:/var/hyperledger/orderer/orderer.genesis.block
    - ../crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp:/var/hyperledger/orderer/msp
    #证书,msp成员账号
    - ../crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/:/var/hyperledger/orderer/tls
    #tls的一个证书
    - orderer.example.com:/var/hyperledger/production/orderer
    #完整的排序节点的映射
    #/var/lib/docker/volumes/order.Hm.com,在申明后,需要继续映射到docker服务器中
    ports:
    - 7050:7050 #端口,从本地端口到docker容器中的端口

    peer0.org1.example.com:
    container_name: peer0.org1.example.com
    extends:
    file: peer-base.yaml #继续继承
    service: peer-base
    environment: #环境变量
    - CORE_PEER_ID=peer0.org1.example.com
    - CORE_PEER_ADDRESS=peer0.org1.example.com:7051
    - CORE_PEER_GOSSIP_BOOTSTRAP=peer1.org1.example.com:7051
    - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer0.org1.example.com:7051
    - CORE_PEER_LOCALMSPID=Org1MSP
    volumes: #挂载
    - /var/run/:/host/var/run/
    - ../crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp:/etc/hyperledger/fabric/msp
    - ../crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls:/etc/hyperledger/fabric/tls
    - peer0.org1.example.com:/var/hyperledger/production
    ports:
    - 7051:7051
    - 7053:7053

    peer1.org1.example.com:
    container_name: peer1.org1.example.com
    extends:
    file: peer-base.yaml
    service: peer-base
    environment:
    - CORE_PEER_ID=peer1.org1.example.com
    - CORE_PEER_ADDRESS=peer1.org1.example.com:7051
    - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer1.org1.example.com:7051
    - CORE_PEER_GOSSIP_BOOTSTRAP=peer0.org1.example.com:7051
    - CORE_PEER_LOCALMSPID=Org1MSP
    volumes:
    - /var/run/:/host/var/run/
    - ../crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp:/etc/hyperledger/fabric/msp
    - ../crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls:/etc/hyperledger/fabric/tls
    - peer1.org1.example.com:/var/hyperledger/production

    ports:
    - 8051:7051
    - 8053:7053

    peer0.org2.example.com:
    container_name: peer0.org2.example.com
    extends:
    file: peer-base.yaml
    service: peer-base
    environment:
    - CORE_PEER_ID=peer0.org2.example.com
    - CORE_PEER_ADDRESS=peer0.org2.example.com:7051
    - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer0.org2.example.com:7051
    - CORE_PEER_GOSSIP_BOOTSTRAP=peer1.org2.example.com:7051
    - CORE_PEER_LOCALMSPID=Org2MSP
    volumes:
    - /var/run/:/host/var/run/
    - ../crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp:/etc/hyperledger/fabric/msp
    - ../crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls:/etc/hyperledger/fabric/tls
    - peer0.org2.example.com:/var/hyperledger/production
    ports:
    - 9051:7051
    - 9053:7053

    peer1.org2.example.com:
    container_name: peer1.org2.example.com
    extends:
    file: peer-base.yaml
    service: peer-base
    environment:
    - CORE_PEER_ID=peer1.org2.example.com
    - CORE_PEER_ADDRESS=peer1.org2.example.com:7051
    - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer1.org2.example.com:7051
    - CORE_PEER_GOSSIP_BOOTSTRAP=peer0.org2.example.com:7051
    - CORE_PEER_LOCALMSPID=Org2MSP
    volumes:
    - /var/run/:/host/var/run/
    - ../crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp:/etc/hyperledger/fabric/msp
    - ../crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls:/etc/hyperledger/fabric/tls
    - peer1.org2.example.com:/var/hyperledger/production
    ports:
    - 10051:7051
    - 10053:7053

    peer-base.yaml:

    version: '2'

    services:
    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
    - CORE_LOGGING_LEVEL=INFO
    #- 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
    working_dir: /opt/gopath/src/github.com/hyperledger/fabric/peer
    command: peer node start #peer节点启动后的命令

  • 相关阅读:
    iOS 自动识别URL(链接)功能的实现
    iOS 如何查看崩溃日志
    Swift-- 闭包
    Swift--方法(函数)
    Swift--控制流
    Swift--字典的了解
    数据存储与访问之——SharedPreferences
    汇编指令之STOS、REP
    汇编指令之ADC、SBB、XCHG、MOVS指令
    pushad与popad
  • 原文地址:https://www.cnblogs.com/beautiful7/p/12925438.html
Copyright © 2020-2023  润新知