diff --git a/flink/README-short.txt b/flink/README-short.txt new file mode 100644 index 000000000000..df215dd4a0b6 --- /dev/null +++ b/flink/README-short.txt @@ -0,0 +1 @@ +Apache FlinkĀ® is a powerful open-source distributed stream and batch processing framework. diff --git a/flink/content.md b/flink/content.md new file mode 100644 index 000000000000..42c3dd49503c --- /dev/null +++ b/flink/content.md @@ -0,0 +1,95 @@ +# 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. diff --git a/flink/get-help.md b/flink/get-help.md new file mode 100644 index 000000000000..7a0301b156b0 --- /dev/null +++ b/flink/get-help.md @@ -0,0 +1 @@ +[Community & Project Info](https://flink.apache.org/community.html) diff --git a/flink/github-repo b/flink/github-repo new file mode 100644 index 000000000000..410f54164315 --- /dev/null +++ b/flink/github-repo @@ -0,0 +1 @@ +https://github.com/docker-flink/docker-flink diff --git a/flink/license.md b/flink/license.md new file mode 100644 index 000000000000..39d051ac6c66 --- /dev/null +++ b/flink/license.md @@ -0,0 +1,3 @@ +Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at + + https://www.apache.org/licenses/LICENSE-2.0 diff --git a/flink/logo.png b/flink/logo.png new file mode 100644 index 000000000000..1549eb013995 Binary files /dev/null and b/flink/logo.png differ diff --git a/flink/maintainer.md b/flink/maintainer.md new file mode 100644 index 000000000000..f00911460ab4 --- /dev/null +++ b/flink/maintainer.md @@ -0,0 +1 @@ +[members of the Apache Flink community](%%GITHUB-REPO%%)