X-Git-Url: https://juplo.de/gitweb/?a=blobdiff_plain;f=docker-compose.yml;h=b7b314483e472f45d05f503cac7b81039393dd14;hb=refs%2Fheads%2Favro-holzweg;hp=01181a71450b8574897abc5880b022e8e1ee46da;hpb=1d411b51a909a5b7b15f76705b61f3fc09505d22;p=demos%2Fkafka%2Fwordcount diff --git a/docker-compose.yml b/docker-compose.yml index 01181a7..b7b3144 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -24,6 +24,20 @@ services: depends_on: - zookeeper + schema-registry: + image: confluentinc/cp-schema-registry:6.2.0 + hostname: schema-registry + ports: + - "9081:9081" + environment: + SCHEMA_REGISTRY_KAFKASTORE_BOOTSTRAP_SERVERS: PLAINTEXT://kafka:9092 + SCHEMA_REGISTRY_HOST_NAME: schema-registry + SCHEMA_REGISTRY_LISTENERS: http://0.0.0.0:9081 + depends_on: + - zookeeper + - kafka + + recorder: image: juplo/wordcount--recorder:1.0.0 environment: @@ -34,8 +48,18 @@ services: depends_on: - kafka + users: + image: juplo/wordcount--users:2.0-avro-SNAPSHOT + environment: + juplo.wordcount.users.bootstrap-server: kafka:9092 + juplo.wordcount.users.topic: users + ports: + - 8082:8080 + depends_on: + - kafka + counter: - image: juplo/wordcount--counter:1.0.0 + image: juplo/wordcount--counter:2.0-avro-SNAPSHOT environment: juplo.wordcount.counter.bootstrap-server: kafka:9092 juplo.wordcount.counter.application-id: counter @@ -47,7 +71,7 @@ services: - kafka top10: - image: juplo/wordcount--top10:1.0.0 + image: juplo/wordcount--top10:2.0-avro-SNAPSHOT environment: juplo.wordcount.top10.bootstrap-server: kafka:9092 juplo.wordcount.top10.application-id: top10 @@ -59,18 +83,55 @@ services: - kafka query: - image: juplo/wordcount--query:1.0.0 + image: juplo/wordcount--query:2.0-avro-SNAPSHOT environment: juplo.wordcount.query.bootstrap-server: kafka:9092 juplo.wordcount.query.application-id: query juplo.wordcount.query.ranking-input-topic: top10 + juplo.wordcount.query.users-input-topic: users ports: - 8085:8080 depends_on: - kafka + bart: + image: juplo/wordcount--fortune:1.0.0 + command: bash -c " + while [ true ]; + do + /usr/games/fortune chalkboard + | head -1 + | http -v recorder:8080/bart; + echo; + sleep 1; + done" + + nerd: + image: juplo/wordcount--fortune:1.0.0 + command: bash -c " + while [ true ]; + do + /usr/games/fortune computers + | grep -v '^[[:space:]]*--' + | http -v recorder:8080/nerd; + echo; + sleep 1; + done" + + riddler: + image: juplo/wordcount--fortune:1.0.0 + command: bash -c " + while [ true ]; + do + /usr/games/fortune riddles + | awk -F':' '/^Q/ { print $$2 }' + | http -v recorder:8080/riddler; + echo; + sleep 1; + done" + cli: - image: confluentinc/cp-kafka:6.2.0 + image: juplo/toolbox command: bash -c " cub kafka-ready -b kafka:9092 1 60 ; kafka-topics --bootstrap-server kafka:9092 --create --partitions 10 --topic recordings ; @@ -79,10 +140,6 @@ services: kafka-topics --bootstrap-server kafka:9092 --create --partitions 10 --topic top10 ; sleep infinity" - kafkacat: - image: confluentinc/cp-kafkacat:6.2.0 - command: sleep infinity - networks: default: external: