HADOOP-17465. Upgrade to Focal (#2613)

This commit is contained in:
Gautham B A 2021-01-26 10:45:43 +05:30 committed by GitHub
parent 06a5d3437f
commit b441ca8699
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 46 additions and 59 deletions

View File

@ -1,4 +1,3 @@
# Licensed to the Apache Software Foundation (ASF) under one # Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file # or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information # distributed with this work for additional information
@ -18,7 +17,7 @@
# Dockerfile for installing the necessary dependencies for building Hadoop. # Dockerfile for installing the necessary dependencies for building Hadoop.
# See BUILDING.txt. # See BUILDING.txt.
FROM ubuntu:bionic FROM ubuntu:focal
WORKDIR /root WORKDIR /root
@ -51,6 +50,7 @@ RUN apt-get -q update \
gcc \ gcc \
git \ git \
gnupg-agent \ gnupg-agent \
hugo \
libbcprov-java \ libbcprov-java \
libbz2-dev \ libbz2-dev \
libcurl4-openssl-dev \ libcurl4-openssl-dev \
@ -65,16 +65,17 @@ RUN apt-get -q update \
locales \ locales \
make \ make \
maven \ maven \
nodejs \
node-yarn \
npm \
openjdk-11-jdk \ openjdk-11-jdk \
openjdk-8-jdk \ openjdk-8-jdk \
pinentry-curses \ pinentry-curses \
pkg-config \ pkg-config \
python \ python \
python2.7 \ python2.7 \
python-pip \
python-pkg-resources \ python-pkg-resources \
python-setuptools \ python-setuptools \
python-wheel \
rsync \ rsync \
shellcheck \ shellcheck \
software-properties-common \ software-properties-common \
@ -93,7 +94,7 @@ ENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-amd64
ENV FINDBUGS_HOME /usr ENV FINDBUGS_HOME /usr
####### #######
# Install Boost 1.72 (1.65 ships with Bionic) # Install Boost 1.72 (1.71 ships with Focal)
####### #######
# hadolint ignore=DL3003 # hadolint ignore=DL3003
RUN mkdir -p /opt/boost-library \ RUN mkdir -p /opt/boost-library \
@ -107,8 +108,20 @@ RUN mkdir -p /opt/boost-library \
&& cd /root \ && cd /root \
&& rm -rf /opt/boost-library && rm -rf /opt/boost-library
####
# Install pip (deprecated from Focal toolchain)
####
# hadolint ignore=DL3003
RUN mkdir -p /opt/pip \
&& curl -L https://bootstrap.pypa.io/get-pip.py > get-pip.py \
&& mv get-pip.py /opt/pip \
&& cd /opt/pip \
&& python2.7 get-pip.py \
&& cd /root \
&& rm -rf /opt/pip
###### ######
# Install Google Protobuf 3.7.1 (3.0.0 ships with Bionic) # Install Google Protobuf 3.7.1 (3.6.1 ships with Focal)
###### ######
# hadolint ignore=DL3003 # hadolint ignore=DL3003
RUN mkdir -p /opt/protobuf-src \ RUN mkdir -p /opt/protobuf-src \
@ -139,25 +152,11 @@ RUN pip2 install \
#### ####
RUN pip2 install python-dateutil==2.7.3 RUN pip2 install python-dateutil==2.7.3
###
# Install node.js 10.x for web UI framework (4.2.6 ships with Xenial)
###
# hadolint ignore=DL3008
RUN curl -L -s -S https://deb.nodesource.com/setup_10.x | bash - \
&& apt-get install -y --no-install-recommends nodejs \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/* \
&& npm install -g bower@1.8.8
###
## Install Yarn 1.22.5 for web UI framework
#### ####
RUN curl -s -S https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \ # Install bower
&& echo 'deb https://dl.yarnpkg.com/debian/ stable main' > /etc/apt/sources.list.d/yarn.list \ ####
&& apt-get -q update \ # hadolint ignore=DL3008
&& apt-get install -y --no-install-recommends yarn=1.22.5-1 \ RUN npm install -g bower@1.8.8
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
### ###
# Install hadolint # Install hadolint
@ -203,12 +202,6 @@ ENV HADOOP_SKIP_YETUS_VERIFICATION true
# YETUS CUT HERE # YETUS CUT HERE
### ###
# Hugo static website generator for new hadoop site
RUN curl -L -o hugo.deb https://github.com/gohugoio/hugo/releases/download/v0.58.3/hugo_0.58.3_Linux-64bit.deb \
&& dpkg --install hugo.deb \
&& rm hugo.deb
# Add a welcome message and environment checks. # Add a welcome message and environment checks.
COPY hadoop_env_checks.sh /root/hadoop_env_checks.sh COPY hadoop_env_checks.sh /root/hadoop_env_checks.sh
RUN chmod 755 /root/hadoop_env_checks.sh RUN chmod 755 /root/hadoop_env_checks.sh

View File

@ -17,7 +17,7 @@
# Dockerfile for installing the necessary dependencies for building Hadoop. # Dockerfile for installing the necessary dependencies for building Hadoop.
# See BUILDING.txt. # See BUILDING.txt.
FROM ubuntu:bionic FROM ubuntu:focal
WORKDIR /root WORKDIR /root
@ -54,6 +54,7 @@ RUN apt-get -q update \
gcc \ gcc \
git \ git \
gnupg-agent \ gnupg-agent \
hugo \
libbcprov-java \ libbcprov-java \
libbz2-dev \ libbz2-dev \
libcurl4-openssl-dev \ libcurl4-openssl-dev \
@ -68,16 +69,17 @@ RUN apt-get -q update \
locales \ locales \
make \ make \
maven \ maven \
nodejs \
node-yarn \
npm \
openjdk-11-jdk \ openjdk-11-jdk \
openjdk-8-jdk \ openjdk-8-jdk \
pinentry-curses \ pinentry-curses \
pkg-config \ pkg-config \
python \ python \
python2.7 \ python2.7 \
python-pip \
python-pkg-resources \ python-pkg-resources \
python-setuptools \ python-setuptools \
python-wheel \
rsync \ rsync \
shellcheck \ shellcheck \
software-properties-common \ software-properties-common \
@ -96,7 +98,7 @@ ENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-arm64
ENV FINDBUGS_HOME /usr ENV FINDBUGS_HOME /usr
####### #######
# Install Boost 1.72 (1.65 ships with Bionic) # Install Boost 1.72 (1.71 ships with Focal)
####### #######
# hadolint ignore=DL3003 # hadolint ignore=DL3003
RUN mkdir -p /opt/boost-library \ RUN mkdir -p /opt/boost-library \
@ -110,8 +112,20 @@ RUN mkdir -p /opt/boost-library \
&& cd /root \ && cd /root \
&& rm -rf /opt/boost-library && rm -rf /opt/boost-library
####
# Install pip (deprecated from Focal toolchain)
####
# hadolint ignore=DL3003
RUN mkdir -p /opt/pip \
&& curl -L https://bootstrap.pypa.io/get-pip.py > get-pip.py \
&& mv get-pip.py /opt/pip \
&& cd /opt/pip \
&& python2.7 get-pip.py \
&& cd /root \
&& rm -rf /opt/pip
###### ######
# Install Google Protobuf 3.7.1 (3.0.0 ships with Bionic) # Install Google Protobuf 3.7.1 (3.6.1 ships with Focal)
###### ######
# hadolint ignore=DL3003 # hadolint ignore=DL3003
RUN mkdir -p /opt/protobuf-src \ RUN mkdir -p /opt/protobuf-src \
@ -142,25 +156,11 @@ RUN pip2 install \
#### ####
RUN pip2 install python-dateutil==2.7.3 RUN pip2 install python-dateutil==2.7.3
###
# Install node.js 10.x for web UI framework (4.2.6 ships with Xenial)
###
# hadolint ignore=DL3008
RUN curl -L -s -S https://deb.nodesource.com/setup_10.x | bash - \
&& apt-get install -y --no-install-recommends nodejs \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/* \
&& npm install -g bower@1.8.8
###
## Install Yarn 1.22.5 for web UI framework
#### ####
RUN curl -s -S https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \ # Install bower
&& echo 'deb https://dl.yarnpkg.com/debian/ stable main' > /etc/apt/sources.list.d/yarn.list \ ####
&& apt-get -q update \ # hadolint ignore=DL3008
&& apt-get install -y --no-install-recommends yarn=1.22.5-1 \ RUN npm install -g bower@1.8.8
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
### ###
# Install phantomjs built for aarch64 # Install phantomjs built for aarch64
@ -187,12 +187,6 @@ ENV HADOOP_SKIP_YETUS_VERIFICATION true
# YETUS CUT HERE # YETUS CUT HERE
### ###
# Hugo static website generator (for new hadoop site docs)
RUN curl -L -o hugo.deb https://github.com/gohugoio/hugo/releases/download/v0.58.3/hugo_0.58.3_Linux-ARM64.deb \
&& dpkg --install hugo.deb \
&& rm hugo.deb
# Add a welcome message and environment checks. # Add a welcome message and environment checks.
COPY hadoop_env_checks.sh /root/hadoop_env_checks.sh COPY hadoop_env_checks.sh /root/hadoop_env_checks.sh
RUN chmod 755 /root/hadoop_env_checks.sh RUN chmod 755 /root/hadoop_env_checks.sh