Beispiel in README.sh verbessert
[demos/kafka/training] / README.sh
index 44e2ecf..ede8623 100755 (executable)
--- a/README.sh
+++ b/README.sh
@@ -4,37 +4,42 @@ IMAGE=juplo/simple-consumer:1.0-SNAPSHOT
 
 if [ "$1" = "cleanup" ]
 then
-  docker-compose down -v
-  mvn clean
+  docker-compose down -v --remove-orphans
   exit
 fi
 
-docker-compose up -d zookeeper kafka-1 kafka-2 kafka-3 cli
-docker-compose rm -svf consumer
+docker-compose up -d kafka-1 kafka-2 kafka-3 cli
+docker-compose rm -svf consumer-1 consumer-2 consumer-3
 
-if [[
-  $(docker image ls -q $IMAGE) == "" ||
-  "$1" = "build"
-]]
-then
-  mvn clean install || exit
-else
-  echo "Using image existing images:"
-  docker image ls $IMAGE
-fi
-
-echo "Waiting for the Kafka-Cluster to become ready..."
-docker-compose exec cli cub kafka-ready -b kafka:9092 1 60 > /dev/null 2>&1 || exit 1
 docker-compose up setup
-docker-compose up -d
+docker-compose up -d producer consumer-1 consumer-2 consumer-3
+docker-compose ps
+sleep 5
 
-while ! [[ $(http 0:8080/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for producer..."; sleep 1; done
+docker-compose stop consumer-2 consumer-3
 sleep 5
-docker-compose exec cli kafkacat -b kafka-2:9092 -t test -q -c 10 -f'topic=%t\tpartition=%p\toffset=%o\tkey=%k\tvalue=%s\n'
-docker-compose exec cli kafkacat -b kafka-2:9092 -t test -q -c 10 -f'topic=%t\tpartition=%p\toffset=%o\tkey=%k\tvalue=%s\n'
-docker-compose exec cli kafkacat -b kafka-2:9092 -t test -q -c 10 -f'topic=%t\tpartition=%p\toffset=%o\tkey=%k\tvalue=%s\n'
 
-docker-compose stop peter klaus beate franz uschi consumer-1 consumer-2 consumer-3
+docker-compose start consumer-3
+docker-compose stop consumer-1
+sleep 1
+docker-compose start consumer-2
+sleep 5
+
+docker-compose start consumer-1
+sleep 5
+
+docker-compose stop producer consumer-1 consumer-2 consumer-3
 docker-compose logs consumer-1
-docker-compose logs consumer-2
-docker-compose logs consumer-3
+
+echo "Messages received by consumer-1 for test/0"
+docker-compose logs consumer-1 | grep test/0
+echo "Messages received by consumer-2 for test/0"
+docker-compose logs consumer-2 | grep test/0
+echo "Messages received by consumer-3 for test/0"
+docker-compose logs consumer-3 | grep test/0
+echo "Messages received by consumer-1 for test/1"
+docker-compose logs consumer-1 | grep test/1
+echo "Messages received by consumer-2 for test/1"
+docker-compose logs consumer-2 | grep test/1
+echo "Messages received by consumer-3 for test/1"
+docker-compose logs consumer-3 | grep test/1