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}