github.com/tenywen/fabric@v1.0.0-beta.0.20170620030522-a5b1ed380643/test/feature/docker-compose/docker-compose-kafka.yml (about)

     1  # Copyright IBM Corp. All Rights Reserved.
     2  #
     3  # SPDX-License-Identifier: Apache-2.0
     4  #
     5  
     6  version: '2'
     7  
     8  networks:
     9      default:
    10  
    11  services:
    12  
    13      zookeeper0:
    14          container_name: zookeeper0
    15          image: hyperledger/fabric-zookeeper
    16          environment:
    17              - ZOO_MY_ID=1
    18              - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888
    19          ports:
    20              - 2181
    21              - 2888
    22              - 3888
    23          networks:
    24            default:
    25               aliases:
    26                 - ${CORE_PEER_NETWORKID}
    27  
    28      zookeeper1:
    29          container_name: zookeeper1
    30          image: hyperledger/fabric-zookeeper
    31          environment:
    32              - ZOO_MY_ID=2
    33              - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888
    34          ports:
    35              - 2181
    36              - 2888
    37              - 3888
    38          networks:
    39            default:
    40               aliases:
    41                 - ${CORE_PEER_NETWORKID}
    42  
    43      zookeeper2:
    44          container_name: zookeeper2
    45          image: hyperledger/fabric-zookeeper
    46          environment:
    47              - ZOO_MY_ID=3
    48              - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888
    49          ports:
    50              - 2181
    51              - 2888
    52              - 3888
    53          networks:
    54            default:
    55               aliases:
    56                 - ${CORE_PEER_NETWORKID}
    57  
    58      kafka0:
    59          image: hyperledger/fabric-kafka
    60          container_name: kafka0
    61          environment:
    62              - KAFKA_MESSAGE_MAX_BYTES=103809024
    63              - KAFKA_REPLICA_FETCH_MAX_BYTES=103809024
    64              - KAFKA_BROKER_ID=0
    65              - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181
    66              - KAFKA_UNCLEAN_LEADER_ELECTION_ENABLE=false
    67              - KAFKA_DEFAULT_REPLICATION_FACTOR=3
    68              - KAFKA_MIN_INSYNC_REPLICAS=2
    69          ports:
    70              - 9092
    71          depends_on:
    72              - zookeeper0
    73              - zookeeper1
    74              - zookeeper2
    75          links:
    76              - zookeeper0:zookeeper0
    77              - zookeeper1:zookeeper1
    78              - zookeeper2:zookeeper2
    79          networks:
    80            default:
    81               aliases:
    82                 - ${CORE_PEER_NETWORKID}
    83  
    84      kafka1:
    85          image: hyperledger/fabric-kafka
    86          container_name: kafka1
    87          environment:
    88              - KAFKA_MESSAGE_MAX_BYTES=103809024
    89              - KAFKA_REPLICA_FETCH_MAX_BYTES=103809024
    90              - KAFKA_BROKER_ID=1
    91              - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181
    92              - KAFKA_UNCLEAN_LEADER_ELECTION_ENABLE=false
    93              - KAFKA_DEFAULT_REPLICATION_FACTOR=3
    94              - KAFKA_MIN_INSYNC_REPLICAS=2
    95          ports:
    96              - 9092
    97          depends_on:
    98              - zookeeper0
    99              - zookeeper1
   100              - zookeeper2
   101          links:
   102              - zookeeper0:zookeeper0
   103              - zookeeper1:zookeeper1
   104              - zookeeper2:zookeeper2
   105          networks:
   106            default:
   107               aliases:
   108                 - ${CORE_PEER_NETWORKID}
   109  
   110      kafka2:
   111          image: hyperledger/fabric-kafka
   112          container_name: kafka2
   113          environment:
   114              - KAFKA_MESSAGE_MAX_BYTES=103809024
   115              - KAFKA_REPLICA_FETCH_MAX_BYTES=103809024
   116              - KAFKA_BROKER_ID=2
   117              - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181
   118              - KAFKA_UNCLEAN_LEADER_ELECTION_ENABLE=false
   119              - KAFKA_DEFAULT_REPLICATION_FACTOR=3
   120              - KAFKA_MIN_INSYNC_REPLICAS=2
   121          ports:
   122              - 9092
   123          depends_on:
   124              - zookeeper0
   125              - zookeeper1
   126              - zookeeper2
   127          links:
   128              - zookeeper0:zookeeper0
   129              - zookeeper1:zookeeper1
   130              - zookeeper2:zookeeper2
   131          networks:
   132            default:
   133               aliases:
   134                 - ${CORE_PEER_NETWORKID}
   135  
   136      kafka3:
   137          image: hyperledger/fabric-kafka
   138          container_name: kafka3
   139          environment:
   140              - KAFKA_MESSAGE_MAX_BYTES=103809024
   141              - KAFKA_REPLICA_FETCH_MAX_BYTES=103809024
   142              - KAFKA_BROKER_ID=3
   143              - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181
   144              - KAFKA_UNCLEAN_LEADER_ELECTION_ENABLE=false
   145              - KAFKA_DEFAULT_REPLICATION_FACTOR=3
   146              - KAFKA_MIN_INSYNC_REPLICAS=2
   147          ports:
   148              - 9092
   149          depends_on:
   150              - zookeeper0
   151              - zookeeper1
   152              - zookeeper2
   153          links:
   154              - zookeeper0:zookeeper0
   155              - zookeeper1:zookeeper1
   156              - zookeeper2:zookeeper2
   157          networks:
   158            default:
   159               aliases:
   160                 - ${CORE_PEER_NETWORKID}
   161  
   162      orderer.example.com:
   163          container_name: orderer.example.com
   164          image: hyperledger/fabric-orderer
   165          environment:
   166              - ORDERER_GENERAL_LOGLEVEL=debug
   167              - CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=${CORE_PEER_NETWORKID}_default
   168              - ORDERER_GENERAL_LOCALMSPDIR=/var/hyperledger/msp
   169              - ORDERER_GENERAL_LOCALMSPID=example.com
   170              - ORDERER_GENERAL_LISTENADDRESS=0.0.0.0
   171              - ORDERER_GENERAL_LISTENPORT=7050
   172              - CONFIGTX_ORDERER_ORDERERTYPE=kafka
   173              - CONFIGTX_ORDERER_KAFKA_BROKERS=[kafka0:9092,kafka1:9092,kafka2:9092,kafka3:9092]
   174              - ORDERER_KAFKA_RETRY_SHORTINTERVAL=1s
   175              - ORDERER_KAFKA_RETRY_SHORTTOTAL=30s
   176              - ORDERER_KAFKA_VERBOSE=true
   177              - CONFIGTX_ORDERER_ADDRESSES=[127.0.0.1:7050]
   178              - ORDERER_GENERAL_LEDGERTYPE=ram
   179              - ORDERER_GENERAL_GENESISPROFILE=SampleInsecureKafka
   180              - ORDERER_GENERAL_GENESISMETHOD=file
   181              - ORDERER_GENERAL_GENESISFILE=/var/hyperledger/configs/orderer.block
   182              # TLS settings
   183              - ORDERER_GENERAL_TLS_ENABLED=false
   184              - ORDERER_GENERAL_TLS_PRIVATEKEY=/var/hyperledger/tls/server.key
   185              - ORDERER_GENERAL_TLS_CERTIFICATE=/var/hyperledger/tls/server.crt
   186              - ORDERER_GENERAL_TLS_ROOTCAS=[/var/hyperledger/tls/ca.crt]
   187          volumes:
   188              - ../configs/${CORE_PEER_NETWORKID}:/var/hyperledger/configs
   189              - ../configs/${CORE_PEER_NETWORKID}/ordererOrganizations/example.com/orderers/orderer.example.com/msp:/var/hyperledger/msp
   190              - ../configs/${CORE_PEER_NETWORKID}/ordererOrganizations/example.com/orderers/orderer.example.com/tls:/var/hyperledger/tls
   191          working_dir: /opt/gopath/src/github.com/hyperledger/fabric/orderer
   192          command: orderer
   193          ports:
   194            - '7050'
   195          depends_on:
   196              - kafka0
   197              - kafka1
   198              - kafka2
   199              - kafka3
   200          links:
   201              - kafka0:kafka0
   202              - kafka1:kafka1
   203              - kafka2:kafka2
   204              - kafka3:kafka3
   205          networks:
   206            default:
   207               aliases:
   208                 - ${CORE_PEER_NETWORKID}
   209  
   210      peer0.org1.example.com:
   211          container_name: peer0.org1.example.com
   212          image: hyperledger/fabric-peer
   213          environment:
   214              - CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
   215              - CORE_PEER_NETWORKID=${CORE_PEER_NETWORKID}
   216              - CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=${CORE_PEER_NETWORKID}_default
   217              - CORE_PEER_ID=peer0.org1.example.com
   218              - CORE_PEER_ADDRESSAUTODETECT=true
   219              - CORE_PEER_ADDRESS=peer0.org1.example.com:7051
   220              - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer0.org1.example.com:7051
   221              - CORE_PEER_GOSSIP_ORGLEADER=false
   222              - CORE_PEER_GOSSIP_USELEADERELECTION=true
   223              - CORE_PEER_GOSSIP_SKIPHANDSHAKE=true
   224              - CORE_PEER_PROFILE_ENABLED=true
   225              - CORE_PEER_MSPCONFIGPATH=/var/hyperledger/msp
   226              - CORE_PEER_LOCALMSPID=org1.example.com
   227              - CORE_LOGGING_LEVEL=DEBUG
   228              # TLS settings
   229              - CORE_PEER_TLS_ENABLED=false
   230              - CORE_PEER_TLS_CERT_FILE=/var/hyperledger/tls/server.crt
   231              - CORE_PEER_TLS_KEY_FILE=/var/hyperledger/tls/server.key
   232              - CORE_PEER_TLS_ROOTCERT_FILE=/var/hyperledger/tls/ca.crt
   233          volumes:
   234              - /var/run/:/host/var/run/
   235              - /opt/gopath:/opt/gopath
   236              - ../configs:/var/hyperledger/configs
   237              - ../configs/${CORE_PEER_NETWORKID}/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp:/var/hyperledger/msp
   238              - ../configs/${CORE_PEER_NETWORKID}/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls:/var/hyperledger/tls
   239          ports:
   240              - '7051'
   241              - '7053'
   242          depends_on:
   243              - orderer.example.com
   244          links:
   245              - orderer.example.com
   246          command: peer node start
   247          networks:
   248            default:
   249               aliases:
   250                 - ${CORE_PEER_NETWORKID}
   251  
   252      peer0.org2.example.com:
   253          image: hyperledger/fabric-peer
   254          container_name: peer0.org2.example.com
   255          environment:
   256              - CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
   257              - CORE_PEER_NETWORKID=${CORE_PEER_NETWORKID}
   258              - CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=${CORE_PEER_NETWORKID}_default
   259              - CORE_PEER_ID=peer0.org2.example.com
   260              - CORE_PEER_ADDRESSAUTODETECT=true
   261              - CORE_PEER_ADDRESS=peer0.org2.example.com:7051
   262              - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer0.org2.example.com:7051
   263              - CORE_PEER_GOSSIP_ORGLEADER=false
   264              - CORE_PEER_GOSSIP_USELEADERELECTION=true
   265              - CORE_PEER_GOSSIP_SKIPHANDSHAKE=true
   266              - CORE_PEER_PROFILE_ENABLED=true
   267              - CORE_PEER_MSPCONFIGPATH=/var/hyperledger/msp
   268              - CORE_PEER_LOCALMSPID=org2.example.com
   269              - CORE_LOGGING_LEVEL=DEBUG
   270              # TLS settings
   271              - CORE_PEER_TLS_ENABLED=false
   272              - CORE_PEER_TLS_CERT_FILE=/var/hyperledger/tls/server.crt
   273              - CORE_PEER_TLS_KEY_FILE=/var/hyperledger/tls/server.key
   274              - CORE_PEER_TLS_ROOTCERT_FILE=/var/hyperledger/tls/ca.crt
   275          volumes:
   276              - /var/run/:/host/var/run/
   277              - /opt/gopath:/opt/gopath
   278              - ../configs:/var/hyperledger/configs
   279              - ../configs/${CORE_PEER_NETWORKID}/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp:/var/hyperledger/msp
   280              - ../configs/${CORE_PEER_NETWORKID}/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls:/var/hyperledger/tls
   281          ports:
   282              - '7051'
   283              - '7053'
   284          depends_on:
   285              - orderer.example.com
   286          links:
   287              - orderer.example.com
   288          command: peer node start
   289          networks:
   290            default:
   291               aliases:
   292                 - ${CORE_PEER_NETWORKID}
   293  
   294      peer1.org1.example.com:
   295          image: hyperledger/fabric-peer
   296          container_name: peer1.org1.example.com
   297          environment:
   298              - CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
   299              - CORE_PEER_NETWORKID=${CORE_PEER_NETWORKID}
   300              - CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=${CORE_PEER_NETWORKID}_default
   301              - CORE_PEER_ID=peer1.org1.example.com
   302              - CORE_PEER_ADDRESSAUTODETECT=true
   303              - CORE_PEER_ADDRESS=peer0.org1.example.com:7051
   304              - CORE_PEER_GOSSIP_BOOTSTRAP=peer0.org1.example.com:7051
   305              - CORE_PEER_GOSSIP_ORGLEADER=false
   306              - CORE_PEER_GOSSIP_USELEADERELECTION=true
   307              - CORE_PEER_GOSSIP_SKIPHANDSHAKE=true
   308              - CORE_PEER_PROFILE_ENABLED=true
   309              - CORE_PEER_MSPCONFIGPATH=/var/hyperledger/msp
   310              - CORE_PEER_LOCALMSPID=org1.example.com
   311              - CORE_LOGGING_LEVEL=DEBUG
   312              # TLS settings
   313              - CORE_PEER_TLS_ENABLED=false
   314              - CORE_PEER_TLS_CERT_FILE=/var/hyperledger/tls/server.crt
   315              - CORE_PEER_TLS_KEY_FILE=/var/hyperledger/tls/server.key
   316              - CORE_PEER_TLS_ROOTCERT_FILE=/var/hyperledger/tls/ca.crt
   317          volumes:
   318              - /var/run/:/host/var/run/
   319              - /opt/gopath:/opt/gopath
   320              - ../configs:/var/hyperledger/configs
   321              - ../configs/${CORE_PEER_NETWORKID}/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp:/var/hyperledger/msp
   322              - ../configs/${CORE_PEER_NETWORKID}/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls:/var/hyperledger/tls
   323          ports:
   324              - '7051'
   325              - '7053'
   326          depends_on:
   327              - orderer.example.com
   328              - peer0.org1.example.com
   329          links:
   330              - orderer.example.com
   331          command: peer node start
   332          networks:
   333            default:
   334               aliases:
   335                 - ${CORE_PEER_NETWORKID}
   336  
   337      peer1.org2.example.com:
   338          image: hyperledger/fabric-peer
   339          container_name: peer1.org2.example.com
   340          environment:
   341              - CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
   342              - CORE_PEER_NETWORKID=${CORE_PEER_NETWORKID}
   343              - CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=${CORE_PEER_NETWORKID}_default
   344              - CORE_PEER_ID=peer1.org2.example.com
   345              - CORE_PEER_ADDRESSAUTODETECT=true
   346              - CORE_PEER_ADDRESS=peer0.org2.example.com:7051
   347              - CORE_PEER_GOSSIP_BOOTSTRAP=peer0.org2.example.com:7051
   348              - CORE_PEER_GOSSIP_ORGLEADER=false
   349              - CORE_PEER_GOSSIP_USELEADERELECTION=true
   350              - CORE_PEER_GOSSIP_SKIPHANDSHAKE=true
   351              - CORE_PEER_PROFILE_ENABLED=true
   352              - CORE_PEER_MSPCONFIGPATH=/var/hyperledger/msp
   353              - CORE_PEER_LOCALMSPID=org2.example.com
   354              - CORE_LOGGING_LEVEL=DEBUG
   355              # TLS settings
   356              - CORE_PEER_TLS_ENABLED=false
   357              - CORE_PEER_TLS_CERT_FILE=/var/hyperledger/tls/server.crt
   358              - CORE_PEER_TLS_KEY_FILE=/var/hyperledger/tls/server.key
   359              - CORE_PEER_TLS_ROOTCERT_FILE=/var/hyperledger/tls/ca.crt
   360          volumes:
   361              - /var/run/:/host/var/run/
   362              - /opt/gopath:/opt/gopath
   363              - ../configs:/var/hyperledger/configs
   364              - ../configs/${CORE_PEER_NETWORKID}/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp:/var/hyperledger/msp
   365              - ../configs/${CORE_PEER_NETWORKID}/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls:/var/hyperledger/tls
   366          ports:
   367              - '7051'
   368              - '7053'
   369          depends_on:
   370              - orderer.example.com
   371              - peer0.org2.example.com
   372          links:
   373              - orderer.example.com
   374          command: peer node start
   375          networks:
   376            default:
   377               aliases:
   378                 - ${CORE_PEER_NETWORKID}
   379  
   380      cli:
   381          container_name: cli
   382          image: hyperledger/fabric-tools
   383          tty: true
   384          environment:
   385              - GOPATH=/opt/gopath
   386              - CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
   387              - CORE_LOGGING_LEVEL=DEBUG
   388              # TLS settings
   389              - CORE_PEER_TLS_ENABLED=false
   390              - CORE_PEER_TLS_CERT_FILE=/var/hyperledger/tls/server.crt
   391              - CORE_PEER_TLS_KEY_FILE=/var/hyperledger/tls/server.key
   392              - CORE_PEER_TLS_ROOTCERT_FILE=/var/hyperledger/tls/ca.crt
   393          working_dir: /opt/gopath/src/github.com/hyperledger/fabric/peer
   394          command: /bin/bash -c 'sleep 6000000000000000000'
   395          volumes:
   396              - /var/run/:/host/var/run/
   397              - /opt/gopath:/opt/gopath
   398              - ../configs:/var/hyperledger/configs
   399              - ../configs/${CORE_PEER_NETWORKID}/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls:/var/hyperledger/tls
   400          ports:
   401              - '9092'
   402          depends_on:
   403            - orderer.example.com
   404            - peer0.org1.example.com
   405            - peer1.org1.example.com
   406            - peer0.org2.example.com
   407            - peer1.org2.example.com
   408          networks:
   409            default:
   410               aliases:
   411                 - ${CORE_PEER_NETWORKID}