forked from opensearch-project/opensearch-build
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Added ubuntu dockerfile to run OpenSearch (opensearch-project#1799)
Signed-off-by: Owais Kazi <[email protected]>
- Loading branch information
1 parent
a7a7fb3
commit ee396c4
Showing
1 changed file
with
60 additions
and
0 deletions.
There are no files selected for viewing
60 changes: 60 additions & 0 deletions
60
docker/ci/dockerfiles/build.ubuntu18.opensearch.x64.dockerfile
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,60 @@ | ||
# SPDX-License-Identifier: Apache-2.0 | ||
# | ||
# The OpenSearch Contributors require contributions made to | ||
# this file be licensed under the Apache-2.0 license or a | ||
# compatible open source license. | ||
|
||
# This is a docker image specifically for running gradle check of OpenSearch repository | ||
|
||
FROM ubuntu:18.04 | ||
|
||
# Install necessary packages | ||
|
||
RUN apt-get update -y && apt-get upgrade -y && apt-get install -y docker.io curl && apt clean -y | ||
|
||
|
||
# Create user group | ||
RUN groupadd -g 1000 opensearch && \ | ||
useradd -u 1000 -g 1000 -d /usr/share/opensearch opensearch && \ | ||
mkdir -p /usr/share/opensearch && \ | ||
chown -R 1000:1000 /usr/share/opensearch | ||
|
||
|
||
# Downloads JDK-8, JDK-11 and JDK-17 distributions using Eclipse Adoptium project. | ||
# The distributions are extracted to /opt/java/ folder with environment variables JAVA8_HOME, | ||
# JAVA11_HOME and JAVA17_HOME exported and pointing at respective ones. | ||
|
||
# JDK 8 | ||
RUN curl -SL https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u302-b08/OpenJDK8U-jdk_x64_linux_hotspot_8u302b08.tar.gz -o /opt/jdk8.tar.gz && \ | ||
mkdir -p /opt/java/openjdk-8 && \ | ||
tar -xzf /opt/jdk8.tar.gz --strip-components 1 -C /opt/java/openjdk-8/ && \ | ||
rm /opt/jdk8.tar.gz | ||
# JDK 11 | ||
RUN curl -SL https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.12%2B7/OpenJDK11U-jdk_x64_linux_hotspot_11.0.12_7.tar.gz -o /opt/jdk11.tar.gz && \ | ||
mkdir -p /opt/java/openjdk-11 && \ | ||
tar -xzf /opt/jdk11.tar.gz --strip-components 1 -C /opt/java/openjdk-11/ && \ | ||
rm /opt/jdk11.tar.gz | ||
# JDK 14 | ||
RUN curl -SL https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12/OpenJDK14U-jdk_x64_linux_hotspot_14.0.2_12.tar.gz -o /opt/jdk14.tar.gz && \ | ||
mkdir -p /opt/java/openjdk-14 && \ | ||
tar -xzf /opt/jdk14.tar.gz --strip-components 1 -C /opt/java/openjdk-14/ && \ | ||
rm /opt/jdk14.tar.gz | ||
# JDK 17 | ||
RUN curl -SL https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17%2B35/OpenJDK17-jdk_x64_linux_hotspot_17_35.tar.gz -o /opt/jdk17.tar.gz && \ | ||
mkdir -p /opt/java/openjdk-17 && \ | ||
tar -xzf /opt/jdk17.tar.gz --strip-components 1 -C /opt/java/openjdk-17/ && \ | ||
rm /opt/jdk17.tar.gz | ||
|
||
# ENV JDK | ||
ENV JAVA_HOME=/opt/java/openjdk-14 \ | ||
PATH=$PATH:$JAVA_HOME/bin \ | ||
JAVA14_HOME=/opt/java/openjdk-14 \ | ||
JAVA8_HOME=/opt/java/openjdk-8 \ | ||
JAVA11_HOME=/opt/java/openjdk-11 \ | ||
JAVA17_HOME=/opt/java/openjdk-17 | ||
|
||
# Sets user to opensearch as gradle check requires non-root user | ||
USER opensearch | ||
|
||
# Sets working directory with write permission to clone OpenSearch | ||
WORKDIR /usr/share/opensearch |