Bedienbarkeit des Setups verbessert
authorKai Moritz <kai@juplo.de>
Thu, 8 Jun 2023 08:35:41 +0000 (10:35 +0200)
committerKai Moritz <kai@juplo.de>
Sun, 11 Jun 2023 15:17:19 +0000 (17:17 +0200)
* Setup starten mit `docker-compose up -t0 -d cli`
** Dabei wird _nicht_ automatisch das Topic `test` neu angelegt
** D.h., die Daten gehen nicht unbeabsichtigt verloren, wenn man mit
   `up -d` prüft, ob noc alles läuft!
* Das Topic `test` kan mit `docker-compose restart -t0 setup` explizit
  gelöscht und neu angelegt (aka geleert) werden.

README.sh
docker-compose.yml

index faccf06..c839f35 100755 (executable)
--- a/README.sh
+++ b/README.sh
@@ -2,14 +2,19 @@
 
 if [ "$1" = "cleanup" ]
 then
-  docker-compose down -v --remove-orphans
+  docker-compose down -t0 -v --remove-orphans
   exit
 fi
 
-docker-compose up setup
+docker-compose up -d kafka-1 kafka-2 kafka-3
 docker-compose ps
+echo "Waiting for the Kafka-Cluster to become ready..."
+docker-compose run --rm cli cub kafka-ready -b kafka:9092 3 60 > /dev/null 2>&1 || exit 1
+
+docker-compose up -t0 -d cli
+sleep 1
+docker-compose logs setup
 
-docker-compose up -d cli
 echo
 echo "Hilfe-Ausgabe von kafkacat"
 echo
index 96c6f87..9454ed3 100644 (file)
@@ -91,13 +91,15 @@ services:
       bash -c "
         kafka-topics --bootstrap-server kafka:9092 --delete --if-exists --topic test
         kafka-topics --bootstrap-server kafka:9092 --create --topic test --partitions 2 --replication-factor 3 --config min.insync.replicas=2
+        echo Das Topic \'test\' wurde erfolgreich angelegt:
         kafka-topics --bootstrap-server kafka:9092 --describe --topic test
+        echo \'docker-compose restart -t0 setup\' löscht das Topic und legt es neu an
+        sleep infinity
       "
     depends_on:
       - kafka-1
       - kafka-2
       - kafka-3
-      - cli
 
   akhq:
     image: tchiotludo/akhq:0.23.0
@@ -119,6 +121,4 @@ services:
     image: juplo/toolbox
     command: sleep infinity
     depends_on:
-      - kafka-1
-      - kafka-2
-      - kafka-3
+      - setup