Fix for ONOS dockerfile that was broken as the absolute path of java was changed in the azul images.
Update the jvm path in the dockerfile and pin the docker image to a more specific tag.
Change-Id: Idc0feea6380974b1e1f93e39af697b36147e6fef
diff --git a/Dockerfile b/Dockerfile
index 64bd479..af4e84e 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,11 +1,12 @@
-ARG JDK_VER=11
ARG BAZEL_VER=1.0.0
ARG JOBS=2
ARG PROFILE=default
+ARG TAG=11.0.8-11.41.23
+ARG JAVA_PATH=/usr/lib/jvm/zulu11-ca-amd64
# First stage is the build environment.
# zulu-openjdk images are based on Ubuntu.
-FROM azul/zulu-openjdk:${JDK_VER} as builder
+FROM azul/zulu-openjdk:${TAG} as builder
ENV BUILD_DEPS \
ca-certificates \
@@ -38,14 +39,14 @@
# updated JDK, including bug and security fixes, independently of the Bazel
# version.
ARG JOBS
-ARG JDK_VER
+ARG JAVA_PATH
ARG PROFILE
RUN bazel build onos \
--jobs ${JOBS} \
--verbose_failures \
--javabase=@bazel_tools//tools/jdk:absolute_javabase \
--host_javabase=@bazel_tools//tools/jdk:absolute_javabase \
- --define=ABSOLUTE_JAVABASE=/usr/lib/jvm/zulu-${JDK_VER}-amd64 \
+ --define=ABSOLUTE_JAVABASE=${JAVA_PATH} \
--define profile=${PROFILE}
# We extract the tar in the build environment to avoid having to put the tar in
@@ -54,7 +55,7 @@
RUN tar -xf bazel-bin/onos.tar.gz -C /output --strip-components=1
# Second and final stage is the runtime environment.
-FROM azul/zulu-openjdk:${JDK_VER}
+FROM azul/zulu-openjdk:${TAG}
LABEL org.label-schema.name="ONOS" \
org.label-schema.description="SDN Controller" \
@@ -72,8 +73,8 @@
WORKDIR /root/onos
# Set JAVA_HOME (by default not exported by zulu images)
-ARG JDK_VER
-ENV JAVA_HOME /usr/lib/jvm/zulu-${JDK_VER}-amd64
+ARG JAVA_PATH
+ENV JAVA_HOME ${JAVA_PATH}
# Ports
# 6653 - OpenFlow