| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you 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 |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| ARG RANGER_DB_TYPE |
| |
| FROM ranger-base:latest AS ranger |
| |
| ARG RANGER_VERSION |
| ARG RANGER_DB_TYPE |
| |
| COPY ./dist/version /home/ranger/dist/ |
| COPY ./dist/ranger-${RANGER_VERSION}-admin.tar.gz /home/ranger/dist/ |
| |
| COPY ./scripts/ranger.sh ${RANGER_SCRIPTS}/ |
| 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 \ |
| && 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 744 ${RANGER_SCRIPTS}/ranger.sh ${RANGER_SCRIPTS}/create-ranger-services.py \ |
| && mkdir -p /usr/share/java/ |
| |
| FROM ranger AS ranger_postgres |
| COPY ./downloads/postgresql-42.2.16.jre7.jar /home/ranger/dist/ |
| RUN mv /home/ranger/dist/postgresql-42.2.16.jre7.jar /usr/share/java/postgresql.jar |
| |
| 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 |
| |
| FROM ranger_${RANGER_DB_TYPE} |
| |
| USER ranger |
| |
| ENTRYPOINT [ "/home/ranger/scripts/ranger.sh" ] |