version: '2.1' services: jobmanager: image: romainr/flink-with-plugins:1.12.0 ports: - "8081:8081" command: jobmanager environment: - | FLINK_PROPERTIES= jobmanager.rpc.address: jobmanager taskmanager: image: romainr/flink-with-plugins:1.12.0 depends_on: - jobmanager command: taskmanager environment: - | FLINK_PROPERTIES= jobmanager.rpc.address: jobmanager taskmanager.numberOfTaskSlots: 10 zookeeper: image: wurstmeister/zookeeper:3.4.6 ports: - "2181:2181" kafka: image: wurstmeister/kafka:2.12-2.2.1 ports: - "9092:9092" - "9094:9094" depends_on: - zookeeper environment: - KAFKA_ADVERTISED_LISTENERS=INSIDE://:9094,OUTSIDE://localhost:9092 - KAFKA_LISTENERS=INSIDE://:9094,OUTSIDE://:9092 - KAFKA_LISTENER_SECURITY_PROTOCOL_MAP=INSIDE:PLAINTEXT,OUTSIDE:PLAINTEXT - KAFKA_INTER_BROKER_LISTENER_NAME=INSIDE - KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 - KAFKA_CREATE_TOPICS="user_behavior:1:1" volumes: - /var/run/docker.sock:/var/run/docker.sock flink-sql-api: image: romainr/flink-sql-api:0.3-1.12.0 container_name: flink-sql-api ports: - "8083:8083" depends_on: - jobmanager ksqldb-server: image: confluentinc/ksqldb-server:0.12.0 hostname: ksqldb-server container_name: ksqldb-server ports: - "8088:8088" environment: KSQL_LISTENERS: http://0.0.0.0:8088 KSQL_BOOTSTRAP_SERVERS: kafka:9094 KSQL_KSQL_LOGGING_PROCESSING_STREAM_AUTO_CREATE: "true" KSQL_KSQL_LOGGING_PROCESSING_TOPIC_AUTO_CREATE: "true" fluentd: image: romainr/fluentd:stream-demo ports: - "24224:24224" - "24224:24224/udp" hue: image: romainr/hue:demo-streams hostname: hue container_name: hue ports: - "8888:8888" depends_on: - hue-database command: ["./wait-for-it.sh", "hue-database:3306", "--", "./startup.sh"] # Redirect logs to Fluentd links: - fluentd # Note: no dual logging in non enterprise edition logging: driver: "fluentd" options: fluentd-address: localhost:24224 tag: hue.logs hue-database: image: mysql:5.7 container_name: hue-database ports: - "33061:3306" volumes: - ./data:/var/lib/mysql environment: MYSQL_ROOT_USER: root MYSQL_ROOT_PASSWORD: secret MYSQL_USER: hue MYSQL_PASSWORD: secret MYSQL_DATABASE: hue volumes: data: