WIP: Avro-Holzweg
[demos/kafka/wordcount] / docker-compose.yml
index 01181a7..b7b3144 100644 (file)
@@ -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: