/
LarsFillmore
/
python_basic-flask-kafka
Обзор
Документация
Войти
/
LarsFillmore
/
python_basic-flask-kafka
Код
Запросы
0
Задачи
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
docker-compose.yml
152 строки
5 KB
SoullessSoldier
worked version 0.0.1
05 сен 2024, 20:44
05 сен 2024, 20:44
7505cd4
Код
Авторство
О чём код?
services: kafka-0: # image: bitnami/kafka:3.4 image: bitnami/kafka:3.6.2 container_name: kafka-0 ports: - "9094:9094" expose: - "9092" - "9093" - "9094" environment: - KAFKA_ENABLE_KRAFT=yes - KAFKA_CFG_PROCESS_ROLES=broker,controller - KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER - ALLOW_PLAINTEXT_LISTENER=yes - KAFKA_CFG_ALLOW_PLAINTEXT_LISTENER=yes - KAFKA_CFG_NODE_ID=0 - KAFKA_CFG_CONTROLLER_QUORUM_VOTERS=0@kafka-0:9093 - KAFKA_CFG_CONTROLLER_QUORUM_VOTERS=0@kafka-0:9093,1@kafka-1:9093,2@kafka-2:9093 - KAFKA_KRAFT_CLUSTER_ID=abcdefghijklmnopqrstuv - KAFKA_CFG_LISTENERS=PLAINTEXT://0.0.0.0:9092,CONTROLLER://0.0.0.0:9093,EXTERNAL://0.0.0.0:9094 - KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://kafka-0:9092,EXTERNAL://kafka-0:9094 - KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=CONTROLLER:PLAINTEXT,EXTERNAL:PLAINTEXT,PLAINTEXT:PLAINTEXT # - KAFKA_CFG_LOG_DIRS=/opt/bitnami/kafka/data - KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE=true - KAFKA_CFG_OFFSETS_RETENTION_MINUTES=1440 # - KAFKA_CFG_LOG_RETENTION_HOURS=168 # - KAFKA_CFG_LOG_SEGMENT_BYTES=1073741824 # - KAFKA_CFG_LOG_RETENTION_CHECK_INTERVAL_MS=300000 # - KAFKA_CFG_NUM_REPLICA_FETCHERS=2 - KAFKA_CFG_DEFAULT_REPLICATION_FACTOR=3 - KAFKA_CFG_MIN_INSYNC_REPLICAS=2 volumes: - kafka_0_data:/bitnami/kafka networks: - kafka-network healthcheck: test: [ "CMD-SHELL", "kafka-topics.sh --bootstrap-server localhost:9092 --list || exit 1" ] interval: 30s timeout: 10s retries: 5 kafka-1: image: bitnami/kafka:3.6.2 container_name: kafka-1 ports: - "9095:9095" expose: - "9092" - "9093" - "9095" environment: - KAFKA_ENABLE_KRAFT=yes - ALLOW_PLAINTEXT_LISTENER=yes - KAFKA_CFG_ALLOW_PLAINTEXT_LISTENER=yes - KAFKA_CFG_NODE_ID=1 - KAFKA_CFG_PROCESS_ROLES=broker,controller - KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER - KAFKA_CFG_CONTROLLER_QUORUM_VOTERS=0@kafka-0:9093,1@kafka-1:9093,2@kafka-2:9093 - KAFKA_KRAFT_CLUSTER_ID=abcdefghijklmnopqrstuv - KAFKA_CFG_LISTENERS=PLAINTEXT://0.0.0.0:9092,CONTROLLER://0.0.0.0:9093,EXTERNAL://0.0.0.0:9095 - KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://kafka-1:9092,EXTERNAL://kafka-1:9095 - KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=CONTROLLER:PLAINTEXT,EXTERNAL:PLAINTEXT,PLAINTEXT:PLAINTEXT - KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE=true - KAFKA_CFG_OFFSETS_RETENTION_MINUTES=1440 - KAFKA_CFG_DEFAULT_REPLICATION_FACTOR=3 - KAFKA_CFG_MIN_INSYNC_REPLICAS=2 volumes: - kafka_1_data:/bitnami/kafka networks: - kafka-network healthcheck: test: [ "CMD-SHELL", "kafka-topics.sh --bootstrap-server localhost:9092 --list || exit 1" ] interval: 30s timeout: 10s retries: 5 kafka-2: image: bitnami/kafka:3.6.2 container_name: kafka-2 ports: - "9096:9096" expose: - "9092" - "9093" - "9096" environment: - KAFKA_ENABLE_KRAFT=yes - ALLOW_PLAINTEXT_LISTENER=yes - KAFKA_CFG_ALLOW_PLAINTEXT_LISTENER=yes - KAFKA_CFG_NODE_ID=2 - KAFKA_CFG_PROCESS_ROLES=broker,controller - KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER - KAFKA_CFG_CONTROLLER_QUORUM_VOTERS=0@kafka-0:9093,1@kafka-1:9093,2@kafka-2:9093 - KAFKA_KRAFT_CLUSTER_ID=abcdefghijklmnopqrstuv - KAFKA_CFG_LISTENERS=PLAINTEXT://0.0.0.0:9092,CONTROLLER://0.0.0.0:9093,EXTERNAL://0.0.0.0:9096 - KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://kafka-2:9092,EXTERNAL://kafka-2:9096 - KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=CONTROLLER:PLAINTEXT,EXTERNAL:PLAINTEXT,PLAINTEXT:PLAINTEXT - KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE=true - KAFKA_CFG_OFFSETS_RETENTION_MINUTES=1440 - KAFKA_CFG_DEFAULT_REPLICATION_FACTOR=3 - KAFKA_CFG_MIN_INSYNC_REPLICAS=2 volumes: - kafka_2_data:/bitnami/kafka networks: - kafka-network healthcheck: test: [ "CMD-SHELL", "kafka-topics.sh --bootstrap-server localhost:9092 --list || exit 1" ] interval: 30s timeout: 10s retries: 5 ui: image: provectuslabs/kafka-ui:v0.7.2 container_name: kafka-ui ports: - "8080:8080" environment: - KAFKA_CLUSTERS_0_BOOTSTRAP_SERVERS=kafka-0:9092 - KAFKA_CLUSTERS_0_NAME=kraft networks: - kafka-network producer: build: ./flask-kafka/ container_name: kafka-producer ports: - "5000:5000" depends_on: kafka-0: condition: service_healthy kafka-1: condition: service_healthy kafka-2: condition: service_healthy networks: - kafka-network volumes: kafka_0_data: kafka_1_data: kafka_2_data: networks: kafka-network: