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

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

commit c14697186599af90f2c9f57ba5002ec28338f58b
Author: Abhishek Kumar <[email protected]>
AuthorDate: Tue Jun 24 18:22:00 2025 -0700

    RANGER-5233: [WIP] Lint Dockerfiles with Hadolint
---
 .../Dockerfile.ranger-ozone => .hadolint.yaml      | 16 +-------
 dev-support/ranger-docker/.dockerignore            |  2 +
 .../{Dockerfile.ranger-ozone => .hadolint.yaml}    | 16 +-------
 dev-support/ranger-docker/Dockerfile.ranger        | 16 ++++----
 dev-support/ranger-docker/Dockerfile.ranger-base   | 20 ++++++++--
 .../ranger-docker/Dockerfile.ranger-base-ubi       | 43 ++++++++++++----------
 dev-support/ranger-docker/Dockerfile.ranger-hadoop | 22 +++++------
 dev-support/ranger-docker/Dockerfile.ranger-hbase  | 14 +++----
 dev-support/ranger-docker/Dockerfile.ranger-hive   | 20 +++++-----
 dev-support/ranger-docker/Dockerfile.ranger-kafka  | 14 +++----
 dev-support/ranger-docker/Dockerfile.ranger-kms    | 16 ++++----
 dev-support/ranger-docker/Dockerfile.ranger-knox   | 21 +++++------
 dev-support/ranger-docker/Dockerfile.ranger-mysql  |  4 +-
 dev-support/ranger-docker/Dockerfile.ranger-ozone  |  4 +-
 .../ranger-docker/Dockerfile.ranger-sqlserver      |  4 +-
 .../ranger-docker/Dockerfile.ranger-tagsync        | 16 ++++----
 .../ranger-docker/Dockerfile.ranger-usersync       | 14 +++----
 .../{Dockerfile.ranger-ozone => requirements.txt}  | 17 ++-------
 18 files changed, 132 insertions(+), 147 deletions(-)

diff --git a/dev-support/ranger-docker/Dockerfile.ranger-ozone b/.hadolint.yaml
similarity index 66%
copy from dev-support/ranger-docker/Dockerfile.ranger-ozone
copy to .hadolint.yaml
index 3c1f6ef6f..4e68842f1 100644
--- a/dev-support/ranger-docker/Dockerfile.ranger-ozone
+++ b/.hadolint.yaml
@@ -14,17 +14,5 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-ARG OZONE_RUNNER_IMAGE
-ARG OZONE_RUNNER_VERSION
-FROM ${OZONE_RUNNER_IMAGE}:${OZONE_RUNNER_VERSION}
-
-ARG OZONE_HOME
-ARG OZONE_PLUGIN_VERSION
-
-USER root
-
-RUN useradd -g hadoop -ms /bin/bash ozone
-RUN mkdir -p -m 755 /var/log/ozone
-
-# Required to locate the plugin jars and the config files
-ENV 
OZONE_MANAGER_CLASSPATH="${OZONE_HOME}/ranger-ozone-plugin/lib/libext/*:${OZONE_HOME}/ranger-ozone-plugin/conf"
+ignored:
+  - DL3007
\ No newline at end of file
diff --git a/dev-support/ranger-docker/.dockerignore 
b/dev-support/ranger-docker/.dockerignore
index 1125a66ff..93e4007d4 100644
--- a/dev-support/ranger-docker/.dockerignore
+++ b/dev-support/ranger-docker/.dockerignore
@@ -15,3 +15,5 @@
 !dist/ranger-*-ozone-plugin.tar.gz
 !downloads/*
 !scripts/*
+!requirements.txt
+!.hadolint.yaml
\ No newline at end of file
diff --git a/dev-support/ranger-docker/Dockerfile.ranger-ozone 
b/dev-support/ranger-docker/.hadolint.yaml
similarity index 66%
copy from dev-support/ranger-docker/Dockerfile.ranger-ozone
copy to dev-support/ranger-docker/.hadolint.yaml
index 3c1f6ef6f..4e68842f1 100644
--- a/dev-support/ranger-docker/Dockerfile.ranger-ozone
+++ b/dev-support/ranger-docker/.hadolint.yaml
@@ -14,17 +14,5 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-ARG OZONE_RUNNER_IMAGE
-ARG OZONE_RUNNER_VERSION
-FROM ${OZONE_RUNNER_IMAGE}:${OZONE_RUNNER_VERSION}
-
-ARG OZONE_HOME
-ARG OZONE_PLUGIN_VERSION
-
-USER root
-
-RUN useradd -g hadoop -ms /bin/bash ozone
-RUN mkdir -p -m 755 /var/log/ozone
-
-# Required to locate the plugin jars and the config files
-ENV 
OZONE_MANAGER_CLASSPATH="${OZONE_HOME}/ranger-ozone-plugin/lib/libext/*:${OZONE_HOME}/ranger-ozone-plugin/conf"
+ignored:
+  - DL3007
\ No newline at end of file
diff --git a/dev-support/ranger-docker/Dockerfile.ranger 
b/dev-support/ranger-docker/Dockerfile.ranger
index 5efc801da..73ad3c3e6 100644
--- a/dev-support/ranger-docker/Dockerfile.ranger
+++ b/dev-support/ranger-docker/Dockerfile.ranger
@@ -35,14 +35,14 @@ COPY ./scripts/ranger.sh                                    
     ${RANGER_SCRIPT
 COPY ./scripts/ranger-admin-install-${RANGER_DB_TYPE}.properties 
${RANGER_SCRIPTS}/ranger-admin-install.properties
 COPY ./scripts/create-ranger-services.py                         
${RANGER_SCRIPTS}/
 
-RUN    tar xvfz /home/ranger/dist/ranger-${RANGER_VERSION}-admin.tar.gz 
--directory=${RANGER_HOME} \
-    && ln -s ${RANGER_HOME}/ranger-${RANGER_VERSION}-admin 
${RANGER_HOME}/admin \
-    && rm -f /home/ranger/dist/ranger-${RANGER_VERSION}-admin.tar.gz \
-    && cp -f ${RANGER_SCRIPTS}/ranger-admin-install.properties 
${RANGER_HOME}/admin/install.properties \
+RUN    tar xvfz /home/ranger/dist/ranger-"${RANGER_VERSION}"-admin.tar.gz 
--directory="${RANGER_HOME}" \
+    && ln -s "${RANGER_HOME}"/ranger-"${RANGER_VERSION}"-admin 
"${RANGER_HOME}"/admin \
+    && rm -f /home/ranger/dist/ranger-"${RANGER_VERSION}"-admin.tar.gz \
+    && cp -f "${RANGER_SCRIPTS}"/ranger-admin-install.properties 
"${RANGER_HOME}"/admin/install.properties \
     && mkdir -p /var/run/ranger \
     && mkdir -p /var/log/ranger \
-    && chown -R ranger:ranger ${RANGER_HOME}/admin/ ${RANGER_SCRIPTS}/ 
/var/run/ranger/ /var/log/ranger/ \
-    && chmod 755 ${RANGER_SCRIPTS}/ranger.sh \
+    && chown -R ranger:ranger "${RANGER_HOME}"/admin/ "${RANGER_SCRIPTS}"/ 
/var/run/ranger/ /var/log/ranger/ \
+    && chmod 755 "${RANGER_SCRIPTS}"/ranger.sh \
     && mkdir -p /usr/share/java/
 
 FROM ranger AS ranger_postgres
@@ -53,7 +53,7 @@ FROM ranger AS ranger_mysql
 COPY ./downloads/mysql-connector-java-8.0.28.jar  /home/ranger/dist/
 COPY ./downloads/log4jdbc-1.2.jar                 /home/ranger/dist/
 RUN     mv /home/ranger/dist/mysql-connector-java-8.0.28.jar 
/usr/share/java/mysql-connector.jar \
-     && mv /home/ranger/dist/log4jdbc-1.2.jar 
${RANGER_HOME}/admin/ews/webapp/WEB-INF/lib/log4jdbc-1.2.jar
+     && mv /home/ranger/dist/log4jdbc-1.2.jar 
"${RANGER_HOME}"/admin/ews/webapp/WEB-INF/lib/log4jdbc-1.2.jar
 
 FROM ranger AS ranger_oracle
 COPY ./downloads/ojdbc8.jar         /home/ranger/dist/
@@ -63,7 +63,7 @@ FROM ranger AS ranger_sqlserver
 COPY ./downloads/mssql-jdbc-12.8.1.jre8.jar            /home/ranger/dist/
 RUN mv /home/ranger/dist/mssql-jdbc-12.8.1.jre8.jar    
/usr/share/java/mssql.jar
 
-FROM ranger_${RANGER_DB_TYPE}
+FROM ranger_${RANGER_DB_TYPE}:${RANGER_VERSION}
 
 USER ranger
 
diff --git a/dev-support/ranger-docker/Dockerfile.ranger-base 
b/dev-support/ranger-docker/Dockerfile.ranger-base
index 0dfd9d0be..f199a6ea2 100644
--- a/dev-support/ranger-docker/Dockerfile.ranger-base
+++ b/dev-support/ranger-docker/Dockerfile.ranger-base
@@ -23,10 +23,22 @@ ENV OS_NAME=UBUNTU
 
 # 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 openjdk-11-jdk openjdk-17-jdk bc 
iputils-ping ssh pdsh xmlstarlet && \
-    pip3 install apache-ranger && \
-    pip3 install requests
+    DEBIAN_FRONTEND="noninteractive" apt-get --no-install-recommends -y 
install \
+    bc \
+    iputils-ping \
+    openjdk-11-jdk \
+    openjdk-17-jdk \
+    openjdk-8-jdk \
+    pdsh \
+    python3 \
+    python3-pip \
+    ssh \
+    tzdata \
+    vim \
+    xmlstarlet && \
+    apt-get clean && rm -rf /var/lib/apt/lists/* && \
+    pip3 install --requirement requirements.txt --no-cache-dir apache-ranger 
&& \
+    pip3 install --requirement requirements.txt --no-cache-dir requests
 
 # Set environment variables
 ENV 
JAVA_HOME=/usr/lib/jvm/java-${RANGER_BASE_JAVA_VERSION}-openjdk-${TARGETARCH}
diff --git a/dev-support/ranger-docker/Dockerfile.ranger-base-ubi 
b/dev-support/ranger-docker/Dockerfile.ranger-base-ubi
index ad107f128..41f223a82 100644
--- a/dev-support/ranger-docker/Dockerfile.ranger-base-ubi
+++ b/dev-support/ranger-docker/Dockerfile.ranger-base-ubi
@@ -31,26 +31,31 @@ ENV 
JAVA_HOME="/usr/lib/jvm/java-${RANGER_BASE_UBI_JAVA_VERSION}" \
     JAVA_VERSION="${RANGER_BASE_UBI_JAVA_VERSION}" \
     JBOSS_CONTAINER_OPENJDK_JDK_MODULE="/opt/jboss/container/openjdk/jdk"
 
-# Install tzdata, Python, python-requests
-RUN microdnf install -y python3 python3-pip bc iputils hostname
-RUN microdnf install -y tar
-RUN microdnf install -y gzip
-RUN microdnf install -y procps
-RUN microdnf install -y vim
+COPY requirements.txt /home/ranger/
 
-# for command useradd, groupadd
-RUN microdnf install -y shadow-utils
-
-# for command su
-RUN microdnf install -y util-linux-user
-RUN microdnf install -y sudo
-
-# for command service
-RUN microdnf install -y initscripts
-RUN microdnf install -y openssh-clients
-RUN microdnf install -y openssh-server
-RUN microdnf install -y wget
-RUN pip3 install apache-ranger
+# Install dnf packages
+# for command useradd, groupadd: shadow-utils
+# for command su: util-linux-user, sudo
+# for command service: initscripts, openssh-clients, openssh-server
+RUN microdnf install -y \
+    bc \
+    gzip \
+    hostname \
+    initscripts \
+    iputils \
+    openssh-clients \
+    openssh-server \
+    procps \
+    python3 \
+    python3-pip \
+    tar \
+    vim \
+    shadow-utils \
+    util-linux-user \
+    sudo \
+    wget && \
+    pip3 install -r /home/ranger/requirements.txt --no-cache-dir apache-ranger 
&& \
+    microdnf clean all
 
 # Set environment variables
 ENV RANGER_HOME=/opt/ranger
diff --git a/dev-support/ranger-docker/Dockerfile.ranger-hadoop 
b/dev-support/ranger-docker/Dockerfile.ranger-hadoop
index 5f64e9fc3..ae34c24d0 100644
--- a/dev-support/ranger-docker/Dockerfile.ranger-hadoop
+++ b/dev-support/ranger-docker/Dockerfile.ranger-hadoop
@@ -32,19 +32,19 @@ COPY ./scripts/ranger-hadoop-mkdir.sh                   
/home/ranger/scripts/
 COPY ./scripts/ranger-hdfs-plugin-install.properties    /home/ranger/scripts/
 COPY ./scripts/ranger-yarn-plugin-install.properties    /home/ranger/scripts/
 
-RUN tar xvfz /home/ranger/dist/hadoop-${HADOOP_VERSION}.tar.gz 
--directory=/opt/ && \
-    ln -s /opt/hadoop-${HADOOP_VERSION} /opt/hadoop && \
-    rm -f /home/ranger/dist/hadoop-${HADOOP_VERSION}.tar.gz && \
-    tar xvfz 
/home/ranger/dist/ranger-${HDFS_PLUGIN_VERSION}-hdfs-plugin.tar.gz 
--directory=/opt/ranger && \
-    ln -s /opt/ranger/ranger-${HDFS_PLUGIN_VERSION}-hdfs-plugin 
/opt/ranger/ranger-hdfs-plugin && \
-    rm -f /home/ranger/dist/ranger-${HDFS_PLUGIN_VERSION}-hdfs-plugin.tar.gz 
&& \
+RUN tar xvfz /home/ranger/dist/hadoop-"${HADOOP_VERSION}".tar.gz 
--directory=/opt/ && \
+    ln -s /opt/hadoop-"${HADOOP_VERSION}" /opt/hadoop && \
+    rm -f /home/ranger/dist/hadoop-"${HADOOP_VERSION}".tar.gz && \
+    tar xvfz 
/home/ranger/dist/ranger-"${HDFS_PLUGIN_VERSION}"-hdfs-plugin.tar.gz 
--directory=/opt/ranger && \
+    ln -s /opt/ranger/ranger-"${HDFS_PLUGIN_VERSION}"-hdfs-plugin 
/opt/ranger/ranger-hdfs-plugin && \
+    rm -f /home/ranger/dist/ranger-"${HDFS_PLUGIN_VERSION}"-hdfs-plugin.tar.gz 
&& \
     cp -f /home/ranger/scripts/ranger-hdfs-plugin-install.properties 
/opt/ranger/ranger-hdfs-plugin/install.properties && \
-    tar xvfz 
/home/ranger/dist/ranger-${YARN_PLUGIN_VERSION}-yarn-plugin.tar.gz 
--directory=/opt/ranger && \
-    ln -s /opt/ranger/ranger-${YARN_PLUGIN_VERSION}-yarn-plugin 
/opt/ranger/ranger-yarn-plugin && \
-    rm -f /home/ranger/dist/ranger-${YARN_PLUGIN_VERSION}-yarn-plugin.tar.gz 
&& \
+    tar xvfz 
/home/ranger/dist/ranger-"${YARN_PLUGIN_VERSION}"-yarn-plugin.tar.gz 
--directory=/opt/ranger && \
+    ln -s /opt/ranger/ranger-"${YARN_PLUGIN_VERSION}"-yarn-plugin 
/opt/ranger/ranger-yarn-plugin && \
+    rm -f /home/ranger/dist/ranger-"${YARN_PLUGIN_VERSION}"-yarn-plugin.tar.gz 
&& \
     cp -f /home/ranger/scripts/ranger-yarn-plugin-install.properties 
/opt/ranger/ranger-yarn-plugin/install.properties && \
-    chmod 744 ${RANGER_SCRIPTS}/ranger-hadoop-setup.sh 
${RANGER_SCRIPTS}/ranger-hadoop.sh ${RANGER_SCRIPTS}/ranger-hadoop-mkdir.sh && \
-    chown hdfs:hadoop ${RANGER_SCRIPTS}/ranger-hadoop-mkdir.sh
+    chmod 744 "${RANGER_SCRIPTS}"/ranger-hadoop-setup.sh 
"${RANGER_SCRIPTS}"/ranger-hadoop.sh "${RANGER_SCRIPTS}"/ranger-hadoop-mkdir.sh 
&& \
+    chown hdfs:hadoop "${RANGER_SCRIPTS}"/ranger-hadoop-mkdir.sh
 
 ENV HADOOP_HOME=/opt/hadoop
 ENV HADOOP_CONF_DIR=/opt/hadoop/etc/hadoop
diff --git a/dev-support/ranger-docker/Dockerfile.ranger-hbase 
b/dev-support/ranger-docker/Dockerfile.ranger-hbase
index cb4d67111..243c5c0a0 100644
--- a/dev-support/ranger-docker/Dockerfile.ranger-hbase
+++ b/dev-support/ranger-docker/Dockerfile.ranger-hbase
@@ -29,14 +29,14 @@ COPY ./scripts/ranger-hbase.sh                           
/home/ranger/scripts/
 COPY ./scripts/ranger-hbase-plugin-install.properties    /home/ranger/scripts/
 COPY ./scripts/hbase-site.xml                            /home/ranger/scripts/
 
-RUN tar xvfz /home/ranger/dist/hbase-${HBASE_VERSION}-bin.tar.gz 
--directory=/opt/ && \
-    ln -s /opt/hbase-${HBASE_VERSION} /opt/hbase && \
-    rm -f /home/ranger/dist/hbase-${HBASE_VERSION}-bin.tar.gz && \
-    tar xvfz 
/home/ranger/dist/ranger-${HBASE_PLUGIN_VERSION}-hbase-plugin.tar.gz 
--directory=/opt/ranger && \
-    ln -s /opt/ranger/ranger-${HBASE_PLUGIN_VERSION}-hbase-plugin 
/opt/ranger/ranger-hbase-plugin && \
-    rm -f /home/ranger/dist/ranger-${HBASE_PLUGIN_VERSION}-hbase-plugin.tar.gz 
&& \
+RUN tar xvfz /home/ranger/dist/hbase-"${HBASE_VERSION}"-bin.tar.gz 
--directory=/opt/ && \
+    ln -s /opt/hbase-"${HBASE_VERSION}" /opt/hbase && \
+    rm -f /home/ranger/dist/hbase-"${HBASE_VERSION}"-bin.tar.gz && \
+    tar xvfz 
/home/ranger/dist/ranger-"${HBASE_PLUGIN_VERSION}"-hbase-plugin.tar.gz 
--directory=/opt/ranger && \
+    ln -s /opt/ranger/ranger-"${HBASE_PLUGIN_VERSION}"-hbase-plugin 
/opt/ranger/ranger-hbase-plugin && \
+    rm -f 
/home/ranger/dist/ranger-"${HBASE_PLUGIN_VERSION}"-hbase-plugin.tar.gz && \
     cp -f /home/ranger/scripts/ranger-hbase-plugin-install.properties 
/opt/ranger/ranger-hbase-plugin/install.properties && \
-    chmod 744 ${RANGER_SCRIPTS}/ranger-hbase-setup.sh 
${RANGER_SCRIPTS}/ranger-hbase.sh
+    chmod 744 "${RANGER_SCRIPTS}"/ranger-hbase-setup.sh 
"${RANGER_SCRIPTS}"/ranger-hbase.sh
 
 ENV HBASE_HOME=/opt/hbase
 ENV 
PATH=/usr/java/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/hbase/bin
diff --git a/dev-support/ranger-docker/Dockerfile.ranger-hive 
b/dev-support/ranger-docker/Dockerfile.ranger-hive
index e8baa6872..e6cc2f344 100644
--- a/dev-support/ranger-docker/Dockerfile.ranger-hive
+++ b/dev-support/ranger-docker/Dockerfile.ranger-hive
@@ -36,20 +36,20 @@ COPY ./scripts/ranger-hive.sh                           
/home/ranger/scripts/
 COPY ./scripts/ranger-hive-plugin-install.properties    /home/ranger/scripts/
 COPY ./scripts/hive-site-${RANGER_DB_TYPE}.xml          
/home/ranger/scripts/hive-site.xml
 
-RUN tar xvfz /home/ranger/dist/apache-hive-${HIVE_VERSION}-bin.tar.gz 
--directory=/opt/ && \
-    ln -s /opt/apache-hive-${HIVE_VERSION}-bin /opt/hive && \
-    rm -f /home/ranger/dist/apache-hive-${HIVE_VERSION}-bin.tar.gz && \
+RUN tar xvfz /home/ranger/dist/apache-hive-"${HIVE_VERSION}"-bin.tar.gz 
--directory=/opt/ && \
+    ln -s /opt/apache-hive-"${HIVE_VERSION}"-bin /opt/hive && \
+    rm -f /home/ranger/dist/apache-hive-"${HIVE_VERSION}"-bin.tar.gz && \
     mv /home/ranger/dist/postgresql-42.2.16.jre7.jar /opt/hive/lib/ && \
     mv /home/ranger/dist/mysql-connector-java-8.0.28.jar /opt/hive/lib/ && \
     mv /home/ranger/dist/ojdbc8.jar /opt/hive/lib/ && \
-    tar xvfz /home/ranger/dist/hadoop-${HIVE_HADOOP_VERSION}.tar.gz 
--directory=/opt/ && \
-    ln -s /opt/hadoop-${HIVE_HADOOP_VERSION} /opt/hadoop && \
-    rm -f /home/ranger/dist/hadoop-${HIVE_HADOOP_VERSION}.tar.gz && \
-    tar xvfz 
/home/ranger/dist/ranger-${HIVE_PLUGIN_VERSION}-hive-plugin.tar.gz 
--directory=/opt/ranger && \
-    ln -s /opt/ranger/ranger-${HIVE_PLUGIN_VERSION}-hive-plugin 
/opt/ranger/ranger-hive-plugin && \
-    rm -f /home/ranger/dist/ranger-${HIVE_PLUGIN_VERSION}-hive-plugin.tar.gz 
&& \
+    tar xvfz /home/ranger/dist/hadoop-"${HIVE_HADOOP_VERSION}".tar.gz 
--directory=/opt/ && \
+    ln -s /opt/hadoop-"${HIVE_HADOOP_VERSION}" /opt/hadoop && \
+    rm -f /home/ranger/dist/hadoop-"${HIVE_HADOOP_VERSION}".tar.gz && \
+    tar xvfz 
/home/ranger/dist/ranger-"${HIVE_PLUGIN_VERSION}"-hive-plugin.tar.gz 
--directory=/opt/ranger && \
+    ln -s /opt/ranger/ranger-"${HIVE_PLUGIN_VERSION}"-hive-plugin 
/opt/ranger/ranger-hive-plugin && \
+    rm -f /home/ranger/dist/ranger-"${HIVE_PLUGIN_VERSION}"-hive-plugin.tar.gz 
&& \
     cp -f /home/ranger/scripts/ranger-hive-plugin-install.properties 
/opt/ranger/ranger-hive-plugin/install.properties && \
-    chmod 744 ${RANGER_SCRIPTS}/ranger-hive-setup.sh 
${RANGER_SCRIPTS}/ranger-hive.sh
+    chmod 744 "${RANGER_SCRIPTS}"/ranger-hive-setup.sh 
"${RANGER_SCRIPTS}"/ranger-hive.sh
 
 ENV HIVE_HOME=/opt/hive
 ENV HADOOP_HOME=/opt/hadoop
diff --git a/dev-support/ranger-docker/Dockerfile.ranger-kafka 
b/dev-support/ranger-docker/Dockerfile.ranger-kafka
index aa9b462f5..074fab87e 100644
--- a/dev-support/ranger-docker/Dockerfile.ranger-kafka
+++ b/dev-support/ranger-docker/Dockerfile.ranger-kafka
@@ -28,14 +28,14 @@ COPY ./scripts/ranger-kafka-setup.sh                     
/home/ranger/scripts/
 COPY ./scripts/ranger-kafka.sh                           /home/ranger/scripts/
 COPY ./scripts/ranger-kafka-plugin-install.properties    /home/ranger/scripts/
 
-RUN tar xvfz /home/ranger/dist/kafka_2.12-${KAFKA_VERSION}.tgz 
--directory=/opt/ && \
-    ln -s /opt/kafka_2.12-${KAFKA_VERSION} /opt/kafka && \
-    rm -f /home/ranger/dist/kafka_2.12-${KAFKA_VERSION}.tgz && \
-    tar xvfz 
/home/ranger/dist/ranger-${KAFKA_PLUGIN_VERSION}-kafka-plugin.tar.gz 
--directory=/opt/ranger && \
-    ln -s /opt/ranger/ranger-${KAFKA_PLUGIN_VERSION}-kafka-plugin 
/opt/ranger/ranger-kafka-plugin && \
-    rm -f /home/ranger/dist/ranger-${KAFKA_PLUGIN_VERSION}-kafka-plugin.tar.gz 
&& \
+RUN tar xvfz /home/ranger/dist/kafka_2.12-"${KAFKA_VERSION}".tgz 
--directory=/opt/ && \
+    ln -s /opt/kafka_2.12-"${KAFKA_VERSION}" /opt/kafka && \
+    rm -f /home/ranger/dist/kafka_2.12-"${KAFKA_VERSION}".tgz && \
+    tar xvfz 
/home/ranger/dist/ranger-"${KAFKA_PLUGIN_VERSION}"-kafka-plugin.tar.gz 
--directory=/opt/ranger && \
+    ln -s /opt/ranger/ranger-"${KAFKA_PLUGIN_VERSION}"-kafka-plugin 
/opt/ranger/ranger-kafka-plugin && \
+    rm -f 
/home/ranger/dist/ranger-"${KAFKA_PLUGIN_VERSION}"-kafka-plugin.tar.gz && \
     cp -f /home/ranger/scripts/ranger-kafka-plugin-install.properties 
/opt/ranger/ranger-kafka-plugin/install.properties && \
-    chmod 744 ${RANGER_SCRIPTS}/ranger-kafka-setup.sh 
${RANGER_SCRIPTS}/ranger-kafka.sh
+    chmod 744 "${RANGER_SCRIPTS}"/ranger-kafka-setup.sh 
"${RANGER_SCRIPTS}"/ranger-kafka.sh
 
 ENV KAFKA_HOME=/opt/kafka
 ENV 
PATH=/usr/java/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/kafka/bin
diff --git a/dev-support/ranger-docker/Dockerfile.ranger-kms 
b/dev-support/ranger-docker/Dockerfile.ranger-kms
index be85bbcff..34193924d 100644
--- a/dev-support/ranger-docker/Dockerfile.ranger-kms
+++ b/dev-support/ranger-docker/Dockerfile.ranger-kms
@@ -26,10 +26,10 @@ COPY ./dist/ranger-${KMS_VERSION}-kms.tar.gz 
/home/ranger/dist/
 COPY ./scripts/ranger-kms.sh                                   
${RANGER_SCRIPTS}/
 COPY ./scripts/ranger-kms-install-${RANGER_DB_TYPE}.properties 
${RANGER_SCRIPTS}/ranger-kms-install.properties
 
-RUN tar xvfz /home/ranger/dist/ranger-${KMS_VERSION}-kms.tar.gz 
--directory=${RANGER_HOME} && \
-    ln -s ${RANGER_HOME}/ranger-${KMS_VERSION}-kms ${RANGER_HOME}/kms && \
-    rm -f /home/ranger/dist/ranger-${KMS_VERSION}-kms.tar.gz && \
-    cp -f ${RANGER_SCRIPTS}/ranger-kms-install.properties 
${RANGER_HOME}/kms/install.properties && \
+RUN tar xvfz /home/ranger/dist/ranger-"${KMS_VERSION}"-kms.tar.gz 
--directory="${RANGER_HOME}" && \
+    ln -s "${RANGER_HOME}"/ranger-"${KMS_VERSION}"-kms "${RANGER_HOME}"/kms && 
\
+    rm -f /home/ranger/dist/ranger-"${KMS_VERSION}"-kms.tar.gz && \
+    cp -f "${RANGER_SCRIPTS}"/ranger-kms-install.properties 
"${RANGER_HOME}"/kms/install.properties && \
     mkdir -p /var/run/ranger_kms && \
     mkdir -p /var/log/ranger/kms && \
     mkdir -p /etc/ranger && \
@@ -39,9 +39,9 @@ RUN tar xvfz 
/home/ranger/dist/ranger-${KMS_VERSION}-kms.tar.gz --directory=${RA
     ln -s /etc/init.d/ranger-kms /etc/rc2.d/K90ranger-kms && \
     ln -s /etc/init.d/ranger-kms /etc/rc3.d/S88ranger-kms && \
     ln -s /etc/init.d/ranger-kms /etc/rc3.d/K90ranger-kms && \
-    ln -s ${RANGER_HOME}/kms/ranger-kms-services.sh 
/usr/bin/ranger-kms-services.sh && \
-    chown -R rangerkms:ranger ${RANGER_HOME}/kms/ ${RANGER_SCRIPTS}/ 
/var/run/ranger_kms/ /var/log/ranger/ && \
-    chmod 744 ${RANGER_SCRIPTS}/ranger-kms.sh && \
+    ln -s "${RANGER_HOME}"/kms/ranger-kms-services.sh 
/usr/bin/ranger-kms-services.sh && \
+    chown -R rangerkms:ranger "${RANGER_HOME}"/kms/ "${RANGER_SCRIPTS}"/ 
/var/run/ranger_kms/ /var/log/ranger/ && \
+    chmod 744 "${RANGER_SCRIPTS}"/ranger-kms.sh && \
     mkdir -p /usr/share/java/
 
 FROM ranger-kms AS ranger_postgres
@@ -52,7 +52,7 @@ FROM ranger-kms AS ranger_mysql
 COPY ./downloads/mysql-connector-java-8.0.28.jar  /home/ranger/dist/
 COPY ./downloads/log4jdbc-1.2.jar                 /home/ranger/dist/
 RUN  mv /home/ranger/dist/mysql-connector-java-8.0.28.jar 
/usr/share/java/mysql-connector-java.jar && \
-     mv /home/ranger/dist/log4jdbc-1.2.jar 
${RANGER_HOME}/kms/ews/webapp/WEB-INF/lib/log4jdbc-1.2.jar
+     mv /home/ranger/dist/log4jdbc-1.2.jar 
"${RANGER_HOME}"/kms/ews/webapp/WEB-INF/lib/log4jdbc-1.2.jar
 
 FROM ranger-kms AS ranger_oracle
 COPY ./downloads/ojdbc8.jar         /home/ranger/dist/
diff --git a/dev-support/ranger-docker/Dockerfile.ranger-knox 
b/dev-support/ranger-docker/Dockerfile.ranger-knox
index fe120cd2b..31c718b49 100644
--- a/dev-support/ranger-docker/Dockerfile.ranger-knox
+++ b/dev-support/ranger-docker/Dockerfile.ranger-knox
@@ -30,22 +30,21 @@ COPY ./scripts/ranger-knox-plugin-install.properties    
/home/ranger/scripts/
 COPY ./scripts/ranger-knox-expect.py                    /home/ranger/scripts/
 COPY ./scripts/ranger-knox-sandbox.xml                  /home/ranger/scripts/
 
-RUN tar xvfz /home/ranger/dist/knox-${KNOX_VERSION}.tar.gz --directory=/opt/ 
&& \
-    ln -s /opt/knox-${KNOX_VERSION} /opt/knox && \
-    rm -f /home/ranger/dist/knox-${KNOX_VERSION}.tar.gz && \
-    tar xvfz 
/home/ranger/dist/ranger-${KNOX_PLUGIN_VERSION}-knox-plugin.tar.gz 
--directory=/opt/ranger && \
-    ln -s /opt/ranger/ranger-${KNOX_PLUGIN_VERSION}-knox-plugin 
/opt/ranger/ranger-knox-plugin && \
-    rm -f /home/ranger/dist/ranger-${KNOX_PLUGIN_VERSION}-knox-plugin.tar.gz 
&& \
+RUN tar xvfz /home/ranger/dist/knox-"${KNOX_VERSION}".tar.gz --directory=/opt/ 
&& \
+    ln -s /opt/knox-"${KNOX_VERSION}" /opt/knox && \
+    rm -f /home/ranger/dist/knox-"${KNOX_VERSION}".tar.gz && \
+    tar xvfz 
/home/ranger/dist/ranger-"${KNOX_PLUGIN_VERSION}"-knox-plugin.tar.gz 
--directory=/opt/ranger && \
+    ln -s /opt/ranger/ranger-"${KNOX_PLUGIN_VERSION}"-knox-plugin 
/opt/ranger/ranger-knox-plugin && \
+    rm -f /home/ranger/dist/ranger-"${KNOX_PLUGIN_VERSION}"-knox-plugin.tar.gz 
&& \
     cp -f /home/ranger/scripts/ranger-knox-plugin-install.properties 
/opt/ranger/ranger-knox-plugin/install.properties && \
     cp -f /home/ranger/scripts/ranger-knox-sandbox.xml 
/opt/knox/conf/topologies/sandbox.xml && \
-    chmod 744 ${RANGER_SCRIPTS}/ranger-knox-setup.sh 
${RANGER_SCRIPTS}/ranger-knox.sh ${RANGER_SCRIPTS}/ranger-knox-expect.py
+    chmod 744 "${RANGER_SCRIPTS}"/ranger-knox-setup.sh 
"${RANGER_SCRIPTS}"/ranger-knox.sh "${RANGER_SCRIPTS}"/ranger-knox-expect.py
 
 ENV KNOX_HOME=/opt/knox
 ENV 
PATH=/usr/java/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/knox/bin
 
-RUN chmod a+rwx /home/ranger/scripts/ranger-knox-expect.py
-
-RUN pip3 install pexpect
-RUN python3 /home/ranger/scripts/ranger-knox-expect.py
+RUN chmod a+rwx /home/ranger/scripts/ranger-knox-expect.py && \
+    pip3 install --requirement requirements.txt --no-cache-dir pexpect && \
+    python3 /home/ranger/scripts/ranger-knox-expect.py
 
 ENTRYPOINT [ "/home/ranger/scripts/ranger-knox.sh" ]
diff --git a/dev-support/ranger-docker/Dockerfile.ranger-mysql 
b/dev-support/ranger-docker/Dockerfile.ranger-mysql
index a9f0e676f..09aa408ad 100644
--- a/dev-support/ranger-docker/Dockerfile.ranger-mysql
+++ b/dev-support/ranger-docker/Dockerfile.ranger-mysql
@@ -23,7 +23,7 @@ USER 0
 RUN mkdir -p /docker-entrypoint-initdb.d /home/mysql
 COPY config/init_mysql.sql /docker-entrypoint-initdb.d/
 COPY config/my.cnf /home/mysql/.my.cnf
-RUN sed -i "s/skip-name-resolve/# skip-name-resolve/" /etc/mysql/mariadb.cnf
-RUN chown -R mysql:mysql /docker-entrypoint-initdb.d/ /home/mysql
+RUN sed -i "s/skip-name-resolve/# skip-name-resolve/" /etc/mysql/mariadb.cnf 
&& \
+    chown -R mysql:mysql /docker-entrypoint-initdb.d/ /home/mysql
 
 ENV MYSQL_ROOT_PASSWORD=rangerR0cks!
diff --git a/dev-support/ranger-docker/Dockerfile.ranger-ozone 
b/dev-support/ranger-docker/Dockerfile.ranger-ozone
index 3c1f6ef6f..c70232936 100644
--- a/dev-support/ranger-docker/Dockerfile.ranger-ozone
+++ b/dev-support/ranger-docker/Dockerfile.ranger-ozone
@@ -23,8 +23,8 @@ ARG OZONE_PLUGIN_VERSION
 
 USER root
 
-RUN useradd -g hadoop -ms /bin/bash ozone
-RUN mkdir -p -m 755 /var/log/ozone
+RUN useradd -g hadoop -ms /bin/bash ozone && \
+    mkdir -p -m 755 /var/log/ozone
 
 # Required to locate the plugin jars and the config files
 ENV 
OZONE_MANAGER_CLASSPATH="${OZONE_HOME}/ranger-ozone-plugin/lib/libext/*:${OZONE_HOME}/ranger-ozone-plugin/conf"
diff --git a/dev-support/ranger-docker/Dockerfile.ranger-sqlserver 
b/dev-support/ranger-docker/Dockerfile.ranger-sqlserver
index 3559fa49d..0f74444a0 100644
--- a/dev-support/ranger-docker/Dockerfile.ranger-sqlserver
+++ b/dev-support/ranger-docker/Dockerfile.ranger-sqlserver
@@ -27,8 +27,8 @@ USER root
 
 RUN  mkdir -p /docker-entrypoint-initdb.d
 COPY config/init_mssql.sh /docker-entrypoint-initdb.d/
-RUN  chown -R mssql /docker-entrypoint-initdb.d/
-RUN  chmod +x /docker-entrypoint-initdb.d/init_mssql.sh
+RUN  chown -R mssql /docker-entrypoint-initdb.d/ && \
+     chmod +x /docker-entrypoint-initdb.d/init_mssql.sh
 
 USER mssql
 
diff --git a/dev-support/ranger-docker/Dockerfile.ranger-tagsync 
b/dev-support/ranger-docker/Dockerfile.ranger-tagsync
index 6e41ae808..91f2deec5 100644
--- a/dev-support/ranger-docker/Dockerfile.ranger-tagsync
+++ b/dev-support/ranger-docker/Dockerfile.ranger-tagsync
@@ -25,12 +25,12 @@ COPY ./scripts/ranger-tagsync.sh                     
${RANGER_SCRIPTS}/
 COPY ./scripts/ranger-tagsync-install.properties     ${RANGER_SCRIPTS}/
 COPY ./scripts/ranger-tagsync-tags.json              ${RANGER_SCRIPTS}/
 
-RUN tar xvfz /home/ranger/dist/ranger-${TAGSYNC_VERSION}-tagsync.tar.gz 
--directory=${RANGER_HOME} && \
-    ln -s ${RANGER_HOME}/ranger-${TAGSYNC_VERSION}-tagsync 
${RANGER_HOME}/tagsync && \
-    rm -f /home/ranger/dist/ranger-${TAGSYNC_VERSION}-tagsync.tar.gz && \
+RUN tar xvfz /home/ranger/dist/ranger-"${TAGSYNC_VERSION}"-tagsync.tar.gz 
--directory="${RANGER_HOME}" && \
+    ln -s "${RANGER_HOME}"/ranger-"${TAGSYNC_VERSION}"-tagsync 
"${RANGER_HOME}"/tagsync && \
+    rm -f /home/ranger/dist/ranger-"${TAGSYNC_VERSION}"-tagsync.tar.gz && \
     mkdir -p /opt/ranger/tagsync/data && \
-    cp -f ${RANGER_SCRIPTS}/ranger-tagsync-install.properties 
${RANGER_HOME}/tagsync/install.properties && \
-    cp -f ${RANGER_SCRIPTS}/ranger-tagsync-tags.json 
${RANGER_HOME}/tagsync/data/tags.json && \
+    cp -f "${RANGER_SCRIPTS}"/ranger-tagsync-install.properties 
"${RANGER_HOME}"/tagsync/install.properties && \
+    cp -f "${RANGER_SCRIPTS}"/ranger-tagsync-tags.json 
"${RANGER_HOME}"/tagsync/data/tags.json && \
     mkdir -p /var/run/ranger && \
     mkdir -p /var/log/ranger/tagsync && \
     ln -s /usr/bin/python3 /usr/bin/python && \
@@ -43,9 +43,9 @@ RUN tar xvfz 
/home/ranger/dist/ranger-${TAGSYNC_VERSION}-tagsync.tar.gz --direct
     ln -s /etc/init.d/ranger-tagsync /etc/rc2.d/K00ranger-tagsync && \
     ln -s /etc/init.d/ranger-tagsync /etc/rc3.d/S99ranger-tagsync && \
     ln -s /etc/init.d/ranger-tagsync /etc/rc3.d/K00ranger-tagsync && \
-    ln -s ${RANGER_HOME}/tagsync/ranger-tagsync-services.sh 
/usr/bin/ranger-tagsync-services.sh && \
-    chown -R ranger:ranger ${RANGER_HOME}/tagsync/ ${RANGER_SCRIPTS}/ 
/var/run/ranger/ /var/log/ranger/ /etc/ranger /etc/init.d/ranger-tagsync && \
-    chmod 744 ${RANGER_SCRIPTS}/ranger-tagsync.sh
+    ln -s "${RANGER_HOME}"/tagsync/ranger-tagsync-services.sh 
/usr/bin/ranger-tagsync-services.sh && \
+    chown -R ranger:ranger "${RANGER_HOME}"/tagsync/ "${RANGER_SCRIPTS}"/ 
/var/run/ranger/ /var/log/ranger/ /etc/ranger /etc/init.d/ranger-tagsync && \
+    chmod 744 "${RANGER_SCRIPTS}"/ranger-tagsync.sh
 
 USER ranger
 
diff --git a/dev-support/ranger-docker/Dockerfile.ranger-usersync 
b/dev-support/ranger-docker/Dockerfile.ranger-usersync
index c1bfe9289..bfd8c3eeb 100644
--- a/dev-support/ranger-docker/Dockerfile.ranger-usersync
+++ b/dev-support/ranger-docker/Dockerfile.ranger-usersync
@@ -25,10 +25,10 @@ COPY ./scripts/ranger-usersync.sh                 
${RANGER_SCRIPTS}/
 COPY ./scripts/ranger-usersync-install.properties ${RANGER_SCRIPTS}/
 COPY ./scripts/ugsync-file-source.csv             ${RANGER_SCRIPTS}/
 
-RUN tar xvfz /home/ranger/dist/ranger-${USERSYNC_VERSION}-usersync.tar.gz 
--directory=${RANGER_HOME} && \
-    ln -s ${RANGER_HOME}/ranger-${USERSYNC_VERSION}-usersync 
${RANGER_HOME}/usersync && \
-    rm -f /home/ranger/dist/ranger-${USERSYNC_VERSION}-usersync.tar.gz && \
-    cp -f ${RANGER_SCRIPTS}/ranger-usersync-install.properties 
${RANGER_HOME}/usersync/install.properties && \
+RUN tar xvfz /home/ranger/dist/ranger-"${USERSYNC_VERSION}"-usersync.tar.gz 
--directory="${RANGER_HOME}" && \
+    ln -s "${RANGER_HOME}"/ranger-"${USERSYNC_VERSION}"-usersync 
"${RANGER_HOME}"/usersync && \
+    rm -f /home/ranger/dist/ranger-"${USERSYNC_VERSION}"-usersync.tar.gz && \
+    cp -f "${RANGER_SCRIPTS}"/ranger-usersync-install.properties 
"${RANGER_HOME}"/usersync/install.properties && \
     mkdir -p /var/run/ranger && \
     mkdir -p /var/log/ranger/usersync && \
     ln -s /usr/bin/python3 /usr/bin/python && \
@@ -41,9 +41,9 @@ RUN tar xvfz 
/home/ranger/dist/ranger-${USERSYNC_VERSION}-usersync.tar.gz --dire
     ln -s /etc/init.d/ranger-usersync /etc/rc2.d/K00ranger-usersync && \
     ln -s /etc/init.d/ranger-usersync /etc/rc3.d/S99ranger-usersync && \
     ln -s /etc/init.d/ranger-usersync /etc/rc3.d/K00ranger-usersync && \
-    ln -s ${RANGER_HOME}/usersync/ranger-usersync-services.sh 
/usr/bin/ranger-usersync && \
-    chown -R ranger:ranger ${RANGER_HOME}/usersync/ ${RANGER_SCRIPTS}/ 
/var/run/ranger/ /var/log/ranger/ /etc/ranger /etc/init.d/ranger-usersync && \
-    chmod 744 ${RANGER_SCRIPTS}/ranger-usersync.sh
+    ln -s "${RANGER_HOME}"/usersync/ranger-usersync-services.sh 
/usr/bin/ranger-usersync && \
+    chown -R ranger:ranger "${RANGER_HOME}"/usersync/ "${RANGER_SCRIPTS}"/ 
/var/run/ranger/ /var/log/ranger/ /etc/ranger /etc/init.d/ranger-usersync && \
+    chmod 744 "${RANGER_SCRIPTS}"/ranger-usersync.sh
 
 USER ranger
 
diff --git a/dev-support/ranger-docker/Dockerfile.ranger-ozone 
b/dev-support/ranger-docker/requirements.txt
similarity index 66%
copy from dev-support/ranger-docker/Dockerfile.ranger-ozone
copy to dev-support/ranger-docker/requirements.txt
index 3c1f6ef6f..9ad3bf706 100644
--- a/dev-support/ranger-docker/Dockerfile.ranger-ozone
+++ b/dev-support/ranger-docker/requirements.txt
@@ -14,17 +14,8 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-ARG OZONE_RUNNER_IMAGE
-ARG OZONE_RUNNER_VERSION
-FROM ${OZONE_RUNNER_IMAGE}:${OZONE_RUNNER_VERSION}
+# This file is used to specify the Python dependencies of all Ranger Docker 
images.
 
-ARG OZONE_HOME
-ARG OZONE_PLUGIN_VERSION
-
-USER root
-
-RUN useradd -g hadoop -ms /bin/bash ozone
-RUN mkdir -p -m 755 /var/log/ozone
-
-# Required to locate the plugin jars and the config files
-ENV 
OZONE_MANAGER_CLASSPATH="${OZONE_HOME}/ranger-ozone-plugin/lib/libext/*:${OZONE_HOME}/ranger-ozone-plugin/conf"
+apache-ranger == 0.0.12
+pexpect == 4.9.0
+requests [security] == 2.32.4

Reply via email to