Настроить видимость Kafka контейнера в другом контейнере

Осваиваю взаимодествие приложения с Kafka Ситуация такая: приложение собирается в одном контейнере, а Kafka - в другом. Не настраиваю одну и ту же сеть между ними, хочу в начале разобраться, как правильно настроить видимость

Настройки Kafka в docker-compose такие:

kafka:
  image: confluentinc/cp-server:7.2.1
  hostname: kafka
  container_name: kafka
  depends_on:
    - zookeeper
  ports:
    - "29092:9092"
  environment:
    KAFKA_BROKER_ID: 1
    KAFKA_ZOOKEEPER_CONNECT: 'zookeeper:2181'
    KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
    KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092,PLAINTEXT_HOST://localhost:29092
    KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
    KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT

Часть кода, где происходит подключение к брокеру:

KafkaProtocolBuilder kafkaProtocol = kafka()
        .topic("test")
        .properties(
                Map.of(
                        ProducerConfig.ACKS_CONFIG, "1",
                        ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, "localhost:9092",
                        ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, "org.apache.kafka.common.serialization.StringSerializer",
                        ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG , "org.apache.kafka.common.serialization.StringSerializer"
                )
        );

Явно настраиваю что-то не так, потому что приложение не видить Kafka. Подскажите, пожалуйста, как сделать это правильно?

Контейнер с приложением пробую также запустить

docker run <имя контейнера> --network host

Ответы (0 шт):