# What is Apache Flink? Apache Flink is an open source stream processing framework with powerful stream- and batch-processing capabilities. Learn more about Flink at [https://flink.apache.org/](https://flink.apache.org/) > [wikipedia.org/wiki/Apache_Flink](https://en.wikipedia.org/wiki/Apache_Flink) %%LOGO%% # How to use this Docker image ## Run a Flink local cluster To run a single Flink local cluster: ```console $ docker run --name flink_local -p 8081:8081 -t flink local ``` Then with a web browser go to `http://localhost:8081/` to see the Flink Web Dashboard (adjust the hostname for your Docker host). To use Flink, you can submit a job to the cluster using the Web UI or you can also do it from a different Flink container, for example: ```console $ docker run --rm -t flink flink run -m -c ``` ## Running a JobManager or a TaskManager You can run a JobManager (master). ```console $ docker run --name flink_jobmanager -d -t flink taskmanager ``` You can also run a TaskManager (worker). Notice that workers need to register with the JobManager directly or via ZooKeeper so the master starts to send them tasks to execute. ```console $ docker run --name flink_taskmanager -d -t flink taskmanager ``` ## Running a cluster using Docker Compose With Docker Compose you can create a Flink cluster: ```yml version: "2.1" services: jobmanager: image: ${FLINK_DOCKER_IMAGE_NAME:-flink} expose: - "6123" ports: - "8081:8081" command: jobmanager environment: - JOB_MANAGER_RPC_ADDRESS=jobmanager taskmanager: image: ${FLINK_DOCKER_IMAGE_NAME:-flink} expose: - "6121" - "6122" depends_on: - jobmanager command: taskmanager links: - "jobmanager:jobmanager" environment: - JOB_MANAGER_RPC_ADDRESS=jobmanager ``` and just run `docker-compose up`. Scale the cluster up or down to *N* TaskManagers: ```console docker-compose scale taskmanager= ``` ## Configuration These are the default ports used by the Flink image: - The Web Client is on port `8081` - JobManager RPC port `6123` - TaskManagers RPC port `6122` - TaskManagers Data port `6121` # About this repository This repository is available on [github.com/docker-flink/docker-flink](https://github.com/docker-flink/docker-flink), and the official build is on the [Docker Hub](https://hub.docker.com/_/flink/). This repository is maintained by members of the Apache Flink community.