You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ranger.apache.org by ma...@apache.org on 2023/04/12 15:48:23 UTC

[ranger] branch master updated: RANGER-4181: Docker setup updated to support JDK 8/11/17 to build Ranger and run Ranger Admin

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

madhan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ranger.git


The following commit(s) were added to refs/heads/master by this push:
     new 00d2241a6 RANGER-4181: Docker setup updated to support JDK 8/11/17 to build Ranger and run Ranger Admin
00d2241a6 is described below

commit 00d2241a61eda96fce92f8fcb24df6cdb69e26a5
Author: Jai Patel <ja...@privacera.com>
AuthorDate: Tue Apr 11 12:03:34 2023 +0530

    RANGER-4181: Docker setup updated to support JDK 8/11/17 to build Ranger and run Ranger Admin
    
    Signed-off-by: Madhan Neethiraj <ma...@apache.org>
---
 dev-support/ranger-docker/.env                            | 13 +++++++++++++
 dev-support/ranger-docker/Dockerfile.ranger               |  5 +++++
 dev-support/ranger-docker/Dockerfile.ranger-base          |  6 ++++--
 dev-support/ranger-docker/Dockerfile.ranger-build         |  5 +++++
 dev-support/ranger-docker/docker-compose.ranger-base.yml  |  1 +
 dev-support/ranger-docker/docker-compose.ranger-build.yml |  2 ++
 dev-support/ranger-docker/docker-compose.ranger.yml       |  1 +
 7 files changed, 31 insertions(+), 2 deletions(-)

diff --git a/dev-support/ranger-docker/.env b/dev-support/ranger-docker/.env
index 1c9608ae9..3f795abde 100644
--- a/dev-support/ranger-docker/.env
+++ b/dev-support/ranger-docker/.env
@@ -4,6 +4,19 @@ GIT_URL=https://github.com/apache/ranger.git
 BRANCH=master
 PROFILE=
 
+# Java version for RangerBase image.
+# This image gets used as base docker image for all images.
+# Valid values: 8, 11, 17
+RANGER_BASE_JAVA_VERSION=8
+
+# Java version to use to build Apache Ranger
+# Valid values: 8, 11, 17
+RANGER_BUILD_JAVA_VERSION=8
+
+# Java version to use to run Ranger Admin server
+# Valid values: 8, 11, 17
+RANGER_ADMIN_JAVA_VERSION=8
+
 # base & third party images
 UBUNTU_VERSION=20.04
 MARIADB_VERSION=10.7.3
diff --git a/dev-support/ranger-docker/Dockerfile.ranger b/dev-support/ranger-docker/Dockerfile.ranger
index b050b13c4..28e19ea0f 100644
--- a/dev-support/ranger-docker/Dockerfile.ranger
+++ b/dev-support/ranger-docker/Dockerfile.ranger
@@ -19,6 +19,11 @@ FROM ranger-base:latest AS ranger
 
 ARG RANGER_VERSION
 ARG RANGER_DB_TYPE
+ARG TARGETARCH
+ARG RANGER_ADMIN_JAVA_VERSION
+
+ENV JAVA_HOME      /usr/lib/jvm/java-${RANGER_ADMIN_JAVA_VERSION}-openjdk-${TARGETARCH}
+RUN update-java-alternatives --set /usr/lib/jvm/java-1.${RANGER_ADMIN_JAVA_VERSION}.0-openjdk-${TARGETARCH}
 
 COPY ./dist/version                               /home/ranger/dist/
 COPY ./dist/ranger-${RANGER_VERSION}-admin.tar.gz /home/ranger/dist/
diff --git a/dev-support/ranger-docker/Dockerfile.ranger-base b/dev-support/ranger-docker/Dockerfile.ranger-base
index 897ffbcb1..e65e3f7d7 100644
--- a/dev-support/ranger-docker/Dockerfile.ranger-base
+++ b/dev-support/ranger-docker/Dockerfile.ranger-base
@@ -18,21 +18,23 @@ ARG UBUNTU_VERSION
 FROM ubuntu:${UBUNTU_VERSION}
 
 ARG TARGETARCH
+ARG RANGER_BASE_JAVA_VERSION
 
 # Install tzdata, Python, Java, python-requests
 RUN apt-get update && \
     DEBIAN_FRONTEND="noninteractive" apt-get -y install tzdata vim\
-    python3 python3-pip openjdk-8-jdk bc iputils-ping ssh pdsh && \
+    python3 python3-pip openjdk-8-jdk openjdk-11-jdk openjdk-17-jdk bc iputils-ping ssh pdsh && \
     pip3 install apache-ranger && \
     pip3 install requests
 
 # Set environment variables
-ENV JAVA_HOME      /usr/lib/jvm/java-8-openjdk-${TARGETARCH}
+ENV JAVA_HOME      /usr/lib/jvm/java-${RANGER_BASE_JAVA_VERSION}-openjdk-${TARGETARCH}
 ENV RANGER_DIST    /home/ranger/dist
 ENV RANGER_SCRIPTS /home/ranger/scripts
 ENV RANGER_HOME    /opt/ranger
 ENV PATH           /usr/java/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
 
+RUN update-java-alternatives --set /usr/lib/jvm/java-1.${RANGER_BASE_JAVA_VERSION}.0-openjdk-${TARGETARCH}
 
 # setup groups, users, directories
 RUN groupadd ranger && \
diff --git a/dev-support/ranger-docker/Dockerfile.ranger-build b/dev-support/ranger-docker/Dockerfile.ranger-build
index ef9b002f6..9a192f152 100644
--- a/dev-support/ranger-docker/Dockerfile.ranger-build
+++ b/dev-support/ranger-docker/Dockerfile.ranger-build
@@ -16,14 +16,19 @@
 
 FROM ranger-base:latest
 
+ARG RANGER_BUILD_JAVA_VERSION
+ARG TARGETARCH
 
 # Install necessary packages to build Ranger
 RUN apt-get update && apt-get -y install git maven build-essential
 
 # Set environment variables
+ENV JAVA_HOME  /usr/lib/jvm/java-${RANGER_BUILD_JAVA_VERSION}-openjdk-${TARGETARCH}
 ENV MAVEN_HOME /usr/share/maven
 ENV PATH       /usr/java/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/apache-maven/bin
 
+RUN update-java-alternatives --set /usr/lib/jvm/java-1.${RANGER_BUILD_JAVA_VERSION}.0-openjdk-${TARGETARCH}
+
 # setup ranger group, and users
 RUN mkdir -p /home/ranger/git && \
     mkdir -p /home/ranger/.m2 && \
diff --git a/dev-support/ranger-docker/docker-compose.ranger-base.yml b/dev-support/ranger-docker/docker-compose.ranger-base.yml
index 41b45936c..e7d17408a 100644
--- a/dev-support/ranger-docker/docker-compose.ranger-base.yml
+++ b/dev-support/ranger-docker/docker-compose.ranger-base.yml
@@ -6,6 +6,7 @@ services:
       dockerfile: Dockerfile.ranger-base
       args:
         - UBUNTU_VERSION=${UBUNTU_VERSION}
+        - RANGER_BASE_JAVA_VERSION=${RANGER_BASE_JAVA_VERSION}
     image: ranger-base
     container_name: ranger-base
     networks:
diff --git a/dev-support/ranger-docker/docker-compose.ranger-build.yml b/dev-support/ranger-docker/docker-compose.ranger-build.yml
index 5d1e9bf09..3dd4a4a06 100644
--- a/dev-support/ranger-docker/docker-compose.ranger-build.yml
+++ b/dev-support/ranger-docker/docker-compose.ranger-build.yml
@@ -4,6 +4,8 @@ services:
     build:
       context: .
       dockerfile: Dockerfile.ranger-build
+      args:
+        - RANGER_BUILD_JAVA_VERSION=${RANGER_BUILD_JAVA_VERSION}
     image: ranger-build
     container_name: ranger-build
     hostname: ranger-build.example.com
diff --git a/dev-support/ranger-docker/docker-compose.ranger.yml b/dev-support/ranger-docker/docker-compose.ranger.yml
index dfdb863e7..d9c10b5a2 100644
--- a/dev-support/ranger-docker/docker-compose.ranger.yml
+++ b/dev-support/ranger-docker/docker-compose.ranger.yml
@@ -7,6 +7,7 @@ services:
       args:
         - RANGER_VERSION=${RANGER_VERSION}
         - RANGER_DB_TYPE=${RANGER_DB_TYPE}
+        - RANGER_ADMIN_JAVA_VERSION=${RANGER_ADMIN_JAVA_VERSION}
     image: ranger:latest
     container_name: ranger
     hostname: ranger.example.com