0

Guys, I have the following problem. I upload Zookeeper, Kafka and Kafdrop via docker compose and everything is uploaded normally, I run the payment project in the IDE and it connects to kafka and everything runs correctly.

Generates the project image and contains a new composite docker to use this image not generated by payment, when uploading the project that manages to make the service not connect Kafka.


application.yml

server:
  port: 8000
spring:
  kafka:
    producer:
      bootstrap-servers: ${KAFKA_URL:http://localhost:29092}

Log de erro

kafka-payment-1 | 2022-02-19 01:31:10.406 WARN 1 --- [| adminclient-1] org.apache.kafka.clients.NetworkClient : [AdminClient clientId=adminclient-1] Connection to node -1 (localhost/127.0.0.1:9092) could not be established. Broker may not be available.


docker-compose.yml

version: '3'

services:
  zookeeper:
    image: confluentinc/cp-zookeeper:latest
    networks:
      - broker-kafka
    environment:
      ZOOKEEPER_CLIENT_PORT: 2181
      ZOOKEEPER_TICK_TIME: 2000

  kafka:
    image: confluentinc/cp-kafka:latest
    networks:
      - broker-kafka
    depends_on:
      - zookeeper
    ports:
      - "9092:9092"
    environment:
      KAFKA_BROKER_ID: 1
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
      KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:29092,PLAINTEXT_HOST://localhost:9092
      KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
      KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
      KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1

  kafdrop:
    image: obsidiandynamics/kafdrop:latest
    networks:
      - broker-kafka
    depends_on:
      - kafka
    ports:
      - "19000:9000"
    environment:
      KAFKA_BROKERCONNECT: kafka:29092

  payment:
    image: valdircezar/payment:1.0.4
    networks:
      - broker-kafka
    depends_on:
      - kafka
    ports:
      - "8000:8000"
    environment:
      KAFKA_URL: kafka:29092

networks:
  broker-kafka:
    driver: bridge```
Valdir
  • 1
  • 2
  • 1) Kafka isn't an HTTP service, so you should remove that prefix from the default value 2) as you can see, your environment variable isn't used since the logs are pointing at localhost on a different port than 29092... You want just `spring.kafka.bootstrap-servers` (remove producer from the properties unless you actually want to set only producer configs) – OneCricketeer Feb 20 '22 at 07:33

0 Answers0