Created
July 21, 2025 20:51
-
-
Save layandreas/ffb57ec5f102ed0d285c1e8e40838e1a to your computer and use it in GitHub Desktop.
Kafka Connect to S3
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| version: '3.8' | |
| services: | |
| zookeeper: | |
| image: confluentinc/cp-zookeeper:7.4.0 | |
| container_name: zookeeper | |
| environment: | |
| ZOOKEEPER_CLIENT_PORT: 2181 | |
| ZOOKEEPER_TICK_TIME: 2000 | |
| kafka: | |
| image: confluentinc/cp-kafka:7.4.0 | |
| container_name: kafka | |
| ports: | |
| - "9092:9092" | |
| environment: | |
| KAFKA_BROKER_ID: 1 | |
| KAFKA_ZOOKEEPER_CONNECT: 'zookeeper:2181' | |
| KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092 | |
| KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1 | |
| depends_on: | |
| - zookeeper | |
| minio: | |
| image: minio/minio | |
| container_name: minio | |
| ports: | |
| - "9000:9000" | |
| - "9001:9001" | |
| environment: | |
| MINIO_ROOT_USER: minioadmin | |
| MINIO_ROOT_PASSWORD: minioadmin | |
| command: server /data --console-address ":9001" | |
| volumes: | |
| - minio-data:/data | |
| kafka-connect: | |
| image: confluentinc/cp-kafka-connect:7.4.0 | |
| container_name: kafka-connect | |
| ports: | |
| - "8083:8083" | |
| environment: | |
| CONNECT_REST_ADVERTISED_HOST_NAME: kafka-connect | |
| CONNECT_BOOTSTRAP_SERVERS: kafka:9092 | |
| CONNECT_REST_PORT: 8083 | |
| CONNECT_GROUP_ID: "connect-cluster" | |
| CONNECT_CONFIG_STORAGE_TOPIC: "connect-configs" | |
| CONNECT_OFFSET_STORAGE_TOPIC: "connect-offsets" | |
| CONNECT_STATUS_STORAGE_TOPIC: "connect-status" | |
| CONNECT_KEY_CONVERTER: org.apache.kafka.connect.json.JsonConverter | |
| CONNECT_VALUE_CONVERTER: org.apache.kafka.connect.json.JsonConverter | |
| CONNECT_INTERNAL_KEY_CONVERTER: org.apache.kafka.connect.json.JsonConverter | |
| CONNECT_INTERNAL_VALUE_CONVERTER: org.apache.kafka.connect.json.JsonConverter | |
| CONNECT_PLUGIN_PATH: /usr/share/java,/etc/kafka-connect/jars | |
| CONNECT_LOG4J_LOGGERS: org.apache.kafka.connect.runtime.rest=WARN,org.reflections=ERROR | |
| CONNECT_CONFIG_STORAGE_REPLICATION_FACTOR: 1 | |
| CONNECT_OFFSET_STORAGE_REPLICATION_FACTOR: 1 | |
| CONNECT_STATUS_STORAGE_REPLICATION_FACTOR: 1 | |
| # S3 / MinIO access config (can be passed to the connector config) | |
| AWS_ACCESS_KEY_ID: minioadmin | |
| AWS_SECRET_ACCESS_KEY: minioadmin | |
| AWS_ENDPOINT_OVERRIDE: http://minio:9000 | |
| # This will help the S3 connector connect to MinIO properly | |
| volumes: | |
| - ./kafka-connect-plugins:/etc/kafka-connect/jars | |
| depends_on: | |
| - kafka | |
| - minio | |
| kafka-ui: | |
| image: provectuslabs/kafka-ui:latest | |
| container_name: kafka-ui | |
| ports: | |
| - "8080:8080" | |
| environment: | |
| - KAFKA_CLUSTERS_0_NAME=local | |
| - KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS=kafka:9092 | |
| - KAFKA_CLUSTERS_0_ZOOKEEPER=zookeeper:2181 | |
| depends_on: | |
| - kafka | |
| - zookeeper | |
| volumes: | |
| minio-data: |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment