You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by po...@apache.org on 2022/04/25 20:36:25 UTC

[airflow] 01/03: image building documentation: adding new provider example

This is an automated email from the ASF dual-hosted git repository.

potiuk pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git

commit 044894d22fbeb843c893a75005091ec9ca7a6c10
Author: Itay Bittan <it...@gmail.com>
AuthorDate: Wed Apr 20 22:12:29 2022 +0300

    image building documentation: adding new provider example
---
 docs/docker-stack/build.rst                                 | 13 +++++++++++--
 .../docker-examples/extending/add-providers/Dockerfile      | 11 ++++++++++-
 .../{add-providers => custom-providers}/Dockerfile          |  2 +-
 3 files changed, 22 insertions(+), 4 deletions(-)

diff --git a/docs/docker-stack/build.rst b/docs/docker-stack/build.rst
index 9679172a2b..588c85ac22 100644
--- a/docs/docker-stack/build.rst
+++ b/docs/docker-stack/build.rst
@@ -274,18 +274,27 @@ You should be aware, about a few things:
 Examples of image extending
 ---------------------------
 
-Example of upgrading Airflow Provider packages
+Example of customizing Airflow Provider packages
 ..............................................
 
 The :ref:`Airflow Providers <providers:community-maintained-providers>` are released independently of core
 Airflow and sometimes you might want to upgrade specific providers only to fix some problems or
 use features available in that provider version. Here is an example of how you can do it
 
-.. exampleinclude:: docker-examples/extending/add-providers/Dockerfile
+.. exampleinclude:: docker-examples/extending/custom-providers/Dockerfile
     :language: Dockerfile
     :start-after: [START Dockerfile]
     :end-before: [END Dockerfile]
 
+Example of adding Airflow Provider packages
+...................................................
+
+The following example adds ``apache-spark`` airflow-providers which requires both ``java``.
+
+.. exampleinclude:: docker-examples/extending/add-provider-extend/Dockerfile
+    :language: Dockerfile
+    :start-after: [START Dockerfile]
+    :end-before: [END Dockerfile]
 
 Example of adding ``apt`` package
 .................................
diff --git a/docs/docker-stack/docker-examples/extending/add-providers/Dockerfile b/docs/docker-stack/docker-examples/extending/add-providers/Dockerfile
index ffea0b137e..79a7350fa6 100644
--- a/docs/docker-stack/docker-examples/extending/add-providers/Dockerfile
+++ b/docs/docker-stack/docker-examples/extending/add-providers/Dockerfile
@@ -16,5 +16,14 @@
 # This is an example Dockerfile. It is not intended for PRODUCTION use
 # [START Dockerfile]
 FROM apache/airflow:2.3.0.dev0
-RUN pip install --no-cache-dir apache-airflow-providers-docker==2.1.0
+USER root
+RUN apt-get update \
+  && apt-get install -y --no-install-recommends \
+         openjdk-11-jre-headless \
+  && apt-get autoremove -yqq --purge \
+  && apt-get clean \
+  && rm -rf /var/lib/apt/lists/*
+USER airflow
+ENV JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
+RUN pip install --no-cache-dir apache-airflow-providers-apache-spark==2.1.3
 # [END Dockerfile]
diff --git a/docs/docker-stack/docker-examples/extending/add-providers/Dockerfile b/docs/docker-stack/docker-examples/extending/custom-providers/Dockerfile
similarity index 99%
copy from docs/docker-stack/docker-examples/extending/add-providers/Dockerfile
copy to docs/docker-stack/docker-examples/extending/custom-providers/Dockerfile
index ffea0b137e..6e516b6365 100644
--- a/docs/docker-stack/docker-examples/extending/add-providers/Dockerfile
+++ b/docs/docker-stack/docker-examples/extending/custom-providers/Dockerfile
@@ -16,5 +16,5 @@
 # This is an example Dockerfile. It is not intended for PRODUCTION use
 # [START Dockerfile]
 FROM apache/airflow:2.3.0.dev0
-RUN pip install --no-cache-dir apache-airflow-providers-docker==2.1.0
+RUN pip install --no-cache-dir apache-airflow-providers-docker==2.5.1
 # [END Dockerfile]