As part of an ongoing effort to improve the experience of using Flink on Docker, some work has been done over the last two months to publish official Flink Docker images to Docker Hub. The goal in the short term is to make running a simple Flink cluster (almost) as easy as running docker run flink. In the long term, we would like these images to be good enough to use in production directly, or as base images for use in an existing Docker workflow.
Flink 1.2.1 has some fixes over the last few releases that make running it on Docker nicer—and in some cases, possible. Notably, FLINK-2821 <https://issues.apache.org/jira/browse/FLINK-2821> allowed Dockerized Flink to run across multiple hosts, and FLINK-4326 <https://issues.apache.org/jira/browse/FLINK-4326> added an option to run Flink in the foreground, which is greatly preferred when running in Docker. We (Ismaël Mejía and myself, with some discussion with Stephan Ewen) decided it made sense to bring the actual Dockerfiles outside of the Apache Flink git repo, primarily to conform with every other Apache project that has official images, but also because these scripts logically exist decoupled from any particular Flink version. They are still Apache-licensed and maintained by the community. Please reply here or on the relevant JIRA/GitHub issue if you have questions or feedback. Here's a squirrel in a container: References: - FLINK-3026: Publish the flink docker container to the docker registry <https://issues.apache.org/jira/browse/FLINK-3026> - Repo for the Dockerfiles and the scripts that generate them <https://github.com/docker-flink/docker-flink> - GitHub PR to add the official images to Docker Hub <https://github.com/docker-library/official-images/pull/2895> - Improvements to the quality of running Flink on Docker to be made in future Flink releases: - FLINK-6300: PID1 of docker images does not behave correctly <https://issues.apache.org/jira/browse/FLINK-6300> - FLINK-6369: Better support for overlay networks <https://issues.apache.org/jira/browse/FLINK-6369> Thanks to Ismaël Mejía, Jamie Grier, and Stephan Ewen for their contributions. -- Patrick Lucas