version: '3.7' services: sql-client: image: jark/demo-sql-client:0.2 depends_on: - redpanda - jobmanager - elasticsearch environment: FLINK_JOBMANAGER_HOST: jobmanager KAFKA_BOOTSTRAP: kafka MYSQL_HOST: mysql ES_HOST: elasticsearch jobmanager: image: flink:1.11.0-scala_2.11 ports: - "8081:8081" command: jobmanager environment: - | FLINK_PROPERTIES= jobmanager.rpc.address: jobmanager taskmanager: image: flink:1.11.0-scala_2.11 depends_on: - jobmanager command: taskmanager environment: - | FLINK_PROPERTIES= jobmanager.rpc.address: jobmanager taskmanager.numberOfTaskSlots: 10 datagen: image: jark/datagen:0.2 command: "java -classpath /opt/datagen/flink-sql-demo.jar myflink.SourceGenerator --input /opt/datagen/user_behavior.log --output kafka kafka:9094 --speedup 2000" depends_on: - redpanda environment: KAFKA_BOOTSTRAP: kafka mysql: image: jark/mysql-example:0.2 ports: - "3306:3306" environment: - MYSQL_ROOT_PASSWORD=123456 redpanda: image: docker.vectorized.io/vectorized/redpanda:v21.8.1 command: - redpanda start - --smp 1 - --memory 1G - --reserve-memory 0M - --overprovisioned - --node-id 0 - --set redpanda.auto_create_topics_enabled=true - --kafka-addr INSIDE://0.0.0.0:9094,OUTSIDE://0.0.0.0:9092 - --advertise-kafka-addr INSIDE://kafka:9094,OUTSIDE://localhost:9092 hostname: kafka ports: - "9092:9092" - "9094:9094" volumes: - /var/lib/redpanda/data elasticsearch: image: docker.elastic.co/elasticsearch/elasticsearch:7.6.0 environment: - cluster.name=docker-cluster - bootstrap.memory_lock=true - "ES_JAVA_OPTS=-Xms512m -Xmx512m" - discovery.type=single-node ports: - "9200:9200" - "9300:9300" ulimits: memlock: soft: -1 hard: -1 nofile: soft: 65536 hard: 65536 kibana: image: docker.elastic.co/kibana/kibana:7.6.0 ports: - "5601:5601"