64 lines
2.2 KiB
Docker
64 lines
2.2 KiB
Docker
# 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.
|
|
|
|
FROM ubuntu:18.04
|
|
|
|
ARG TARGETARCH
|
|
ARG ATLAS_BASE_JAVA_VERSION
|
|
|
|
# Install Git, which is missing from the Ubuntu base images.
|
|
RUN apt-get update && apt-get install -y git python
|
|
|
|
# Install Java.
|
|
RUN apt-get update && apt-get install -y openjdk-8-jdk
|
|
ENV JAVA_HOME /usr/lib/jvm/java-${ATLAS_BASE_JAVA_VERSION}-openjdk-${TARGETARCH}
|
|
|
|
# Install Maven.
|
|
|
|
RUN apt-get update && apt-get install -y maven
|
|
ENV MAVEN_HOME /usr/share/maven
|
|
|
|
# Add Java and Maven to the path.
|
|
ENV PATH /usr/java/bin:/usr/local/apache-maven/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
|
|
|
|
# Working directory
|
|
WORKDIR /root
|
|
|
|
# Pull down Atlas and build it into /root/atlas-bin.
|
|
RUN git clone https://github.com/apache/atlas.git -b master
|
|
|
|
RUN echo 'package-lock=false' >> ./atlas/.npmrc
|
|
|
|
RUN echo 'package-lock.json' >> ./atlas/.gitignore
|
|
|
|
# Memory requirements
|
|
ENV MAVEN_OPTS "-Xms2g -Xmx2g"
|
|
# RUN export MAVEN_OPTS="-Xms2g -Xmx2g"
|
|
|
|
# Remove -DskipTests if unit tests are to be included
|
|
RUN mvn clean install -DskipTests -Pdist,embedded-hbase-solr -f ./atlas/pom.xml
|
|
RUN mkdir -p atlas-bin
|
|
RUN tar xzf /root/atlas/distro/target/*bin.tar.gz --strip-components 1 -C /root/atlas-bin
|
|
|
|
# Set env variables, add it to the path, and start Atlas.
|
|
ENV MANAGE_LOCAL_SOLR true
|
|
ENV MANAGE_LOCAL_HBASE true
|
|
ENV PATH /root/atlas-bin/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
|
|
|
|
EXPOSE 21000
|
|
|
|
CMD ["/bin/bash", "-c", "/root/atlas-bin/bin/atlas_start.py; tail -fF /root/atlas-bin/logs/application.log"]
|