You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@heron.apache.org by nw...@apache.org on 2020/04/30 23:27:11 UTC

[incubator-heron] branch master updated: Adding Ubuntu 20.04 Dockerfiles (#3519)

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

nwang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-heron.git


The following commit(s) were added to refs/heads/master by this push:
     new c7a5ab4  Adding Ubuntu 20.04 Dockerfiles (#3519)
c7a5ab4 is described below

commit c7a5ab45e1974d86a19e3eab4a5832a1d8e94600
Author: Nicholas Nezis <ni...@gmail.com>
AuthorDate: Thu Apr 30 19:27:01 2020 -0400

    Adding Ubuntu 20.04 Dockerfiles (#3519)
---
 docker/compile/Dockerfile.ubuntu20.04   | 52 ++++++++++++++++++++++++++++++
 docker/dist/Dockerfile.dist.ubuntu20.04 | 57 +++++++++++++++++++++++++++++++++
 2 files changed, 109 insertions(+)

diff --git a/docker/compile/Dockerfile.ubuntu20.04 b/docker/compile/Dockerfile.ubuntu20.04
new file mode 100644
index 0000000..c963910
--- /dev/null
+++ b/docker/compile/Dockerfile.ubuntu20.04
@@ -0,0 +1,52 @@
+#  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:20.04
+
+# This is passed to the heron build command via the --config flag
+ENV TARGET_PLATFORM ubuntu
+ENV bazelVersion 3.0.0
+
+ARG DEBIAN_FRONTEND=noninteractive
+
+RUN apt-get update && apt-get -y install \
+      g++ \
+      cmake \
+      automake \
+      libtool-bin \
+      libunwind8 \
+      libcppunit-dev \
+      patch \
+      python-dev \
+      pkg-config \
+      wget \
+      zip \
+      virtualenv \
+      unzip \
+      git \
+      curl \
+      tree \
+      openjdk-11-jdk-headless
+
+ENV JAVA_HOME /usr/lib/jvm/java-11-openjdk-amd64
+
+RUN wget -O /tmp/bazel.sh https://github.com/bazelbuild/bazel/releases/download/$bazelVersion/bazel-$bazelVersion-installer-linux-x86_64.sh \
+      && chmod +x /tmp/bazel.sh \
+      && /tmp/bazel.sh
+
+ADD bazelrc /root/.bazelrc
+ADD scripts/compile-platform.sh /compile-platform.sh
diff --git a/docker/dist/Dockerfile.dist.ubuntu20.04 b/docker/dist/Dockerfile.dist.ubuntu20.04
new file mode 100644
index 0000000..6e22845
--- /dev/null
+++ b/docker/dist/Dockerfile.dist.ubuntu20.04
@@ -0,0 +1,57 @@
+#  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:20.04
+
+ARG DEBIAN_FRONTEND=noninteractive
+
+RUN apt-get update
+RUN apt-get -y install \
+    unzip software-properties-common curl python python3 supervisor openjdk-11-jdk-headless
+
+ENV JAVA_HOME /usr/lib/jvm/java-11-openjdk-amd64
+RUN update-ca-certificates -f
+
+ADD artifacts /heron
+
+WORKDIR /heron
+
+# run heron installers
+RUN /heron/heron-install.sh \
+    && rm -f /heron/heron-install.sh
+
+RUN ln -s /usr/local/heron/dist/heron-core /heron \
+    && mkdir -p /heron/heron-tools \
+    && ln -s /usr/local/heron/bin /heron/heron-tools \
+    && ln -s /usr/local/heron/conf /heron/heron-tools \
+    && ln -s /usr/local/heron/dist /heron/heron-tools \
+    && ln -s /usr/local/heron/lib /heron/heron-tools \
+    && ln -s /usr/local/heron/release.yaml /heron/heron-tools \
+    && ln -s /usr/local/heron/examples /heron \
+    && ln -s /usr/local/heron/release.yaml /heron
+
+ENV HERON_HOME /heron/heron-core/
+RUN export HERON_HOME
+
+# install zookeeper
+ARG ZK_DIST=zookeeper-3.4.14
+ADD dist/scripts /opt/heron-docker/scripts
+
+RUN sh /opt/heron-docker/scripts/install-zookeeper.sh $ZK_DIST
+
+ADD dist/conf/zookeeper.conf /opt/zookeeper/conf/zookeeper.conf
+ADD dist/conf/sandbox.conf /etc/supervisor/conf.d/