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
-sleep 5
-docker-compose exec cli kafkacat -b kafka:9092 -t test -q -c 20 -f'topic=%t\tpartition=%p\toffset=%o\tkey=%k\tvalue=%s\n'
+while ! [[ $(http 0:8080/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for producer..."; sleep 1; done
+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 producer consumer-1 consumer-2 consumer-3
+docker-compose stop peter klaus beate franz uschi consumer-1 consumer-2 consumer-3
docker-compose logs consumer-1
docker-compose logs consumer-2
docker-compose logs consumer-3
command: sleep infinity
producer:
- image: juplo/simple-producer:1.0-SNAPSHOT
- command: producer
+ image: juplo/rest-producer:1.0-SNAPSHOT
+ ports:
+ - 8080:8080
+ environment:
+ server.port: 8080
+ producer.bootstrap-server: kafka:9092
+ producer.client-id: producer
+ producer.topic: test
+
+ peter:
+ image: juplo/rest-client:1.0-SNAPSHOT
+ environment:
+ server.port: 8080
+ rest-client.baseUrl: http://producer:8080
+ rest-client.username: peter
+ rest-client.throttle-ms: 1000
+
+ klaus:
+ image: juplo/rest-client:1.0-SNAPSHOT
+ environment:
+ server.port: 8080
+ rest-client.baseUrl: http://producer:8080
+ rest-client.username: klaus
+ rest-client.throttle-ms: 1100
+
+ beate:
+ image: juplo/rest-client:1.0-SNAPSHOT
+ environment:
+ server.port: 8080
+ rest-client.baseUrl: http://producer:8080
+ rest-client.username: beate
+ rest-client.throttle-ms: 900
+
+ franz:
+ image: juplo/rest-client:1.0-SNAPSHOT
+ environment:
+ server.port: 8080
+ rest-client.baseUrl: http://producer:8080
+ rest-client.username: franz
+ rest-client.throttle-ms: 800
+
+ uschi:
+ image: juplo/rest-client:1.0-SNAPSHOT
+ environment:
+ server.port: 8080
+ rest-client.baseUrl: http://producer:8080
+ rest-client.username: uschi
+ rest-client.throttle-ms: 1200
consumer-1:
image: juplo/simple-consumer:1.0-SNAPSHOT