kafka-ui.yaml 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. ---
  2. version: '2'
  3. services:
  4. kafka-ui:
  5. container_name: kafka-ui
  6. image: kafka-ui:latest
  7. ports:
  8. - 8080:8080
  9. depends_on:
  10. - zookeeper0
  11. - zookeeper1
  12. - kafka0
  13. - kafka1
  14. - schemaregistry0
  15. environment:
  16. KAFKA_CLUSTERS_0_NAME: local
  17. KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS: kafka0:29092
  18. KAFKA_CLUSTERS_0_ZOOKEEPER: zookeeper0:2181
  19. KAFKA_CLUSTERS_0_JMXPORT: 9997
  20. KAFKA_CLUSTERS_0_SCHEMAREGISTRY: http://schemaregistry0:8085
  21. KAFKA_CLUSTERS_1_NAME: secondLocal
  22. KAFKA_CLUSTERS_1_BOOTSTRAPSERVERS: kafka1:29092
  23. KAFKA_CLUSTERS_1_ZOOKEEPER: zookeeper1:2181
  24. KAFKA_CLUSTERS_1_JMXPORT: 9998
  25. zookeeper0:
  26. image: confluentinc/cp-zookeeper:5.1.0
  27. environment:
  28. ZOOKEEPER_CLIENT_PORT: 2181
  29. ZOOKEEPER_TICK_TIME: 2000
  30. kafka0:
  31. image: confluentinc/cp-kafka:5.1.0
  32. depends_on:
  33. - zookeeper0
  34. ports:
  35. - 9092:9092
  36. - 9997:9997
  37. environment:
  38. KAFKA_BROKER_ID: 1
  39. KAFKA_ZOOKEEPER_CONNECT: zookeeper0:2181
  40. KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka0:29092,PLAINTEXT_HOST://localhost:9092
  41. KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
  42. KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
  43. KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
  44. JMX_PORT: 9997
  45. KAFKA_JMX_OPTS: -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=kafka0 -Dcom.sun.management.jmxremote.rmi.port=9997
  46. zookeeper1:
  47. image: confluentinc/cp-zookeeper:5.1.0
  48. environment:
  49. ZOOKEEPER_CLIENT_PORT: 2181
  50. ZOOKEEPER_TICK_TIME: 2000
  51. kafka1:
  52. image: confluentinc/cp-kafka:5.1.0
  53. depends_on:
  54. - zookeeper1
  55. ports:
  56. - 9093:9093
  57. - 9998:9998
  58. environment:
  59. KAFKA_BROKER_ID: 1
  60. KAFKA_ZOOKEEPER_CONNECT: zookeeper1:2181
  61. KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka1:29092,PLAINTEXT_HOST://localhost:9093
  62. KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
  63. KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
  64. KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
  65. JMX_PORT: 9998
  66. KAFKA_JMX_OPTS: -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=kafka1 -Dcom.sun.management.jmxremote.rmi.port=9998
  67. schemaregistry0:
  68. image: confluentinc/cp-schema-registry:5.1.0
  69. ports:
  70. - 8085:8085
  71. depends_on:
  72. - zookeeper0
  73. - kafka0
  74. environment:
  75. SCHEMA_REGISTRY_KAFKASTORE_BOOTSTRAP_SERVERS: PLAINTEXT://kafka0:29092
  76. SCHEMA_REGISTRY_KAFKASTORE_CONNECTION_URL: zookeeper0:2181
  77. SCHEMA_REGISTRY_KAFKASTORE_SECURITY_PROTOCOL: PLAINTEXT
  78. SCHEMA_REGISTRY_HOST_NAME: schemaregistry0
  79. SCHEMA_REGISTRY_LISTENERS: http://schemaregistry0:8085
  80. SCHEMA_REGISTRY_SCHEMA_REGISTRY_INTER_INSTANCE_PROTOCOL: "http"
  81. SCHEMA_REGISTRY_LOG4J_ROOT_LOGLEVEL: INFO
  82. SCHEMA_REGISTRY_KAFKASTORE_TOPIC: _schemas
  83. kafka-init-topics:
  84. image: confluentinc/cp-kafka:5.1.0
  85. volumes:
  86. - ./message.json:/data/message.json
  87. depends_on:
  88. - kafka1
  89. command: "bash -c 'echo Waiting for Kafka to be ready... && \
  90. cub kafka-ready -b kafka1:29092 1 30 && \
  91. kafka-topics --create --topic second.users --partitions 3 --replication-factor 1 --if-not-exists --zookeeper zookeeper1:2181 && \
  92. kafka-topics --create --topic second.messages --partitions 2 --replication-factor 1 --if-not-exists --zookeeper zookeeper1:2181 && \
  93. kafka-console-producer --broker-list kafka1:29092 -topic second.users < /data/message.json'"