HADOOP-17723. [build] fix the Dockerfile for ARM (#3037)

Reviewed-by: Akira Ajisaka <aajisaka@apache.org>
(cherry picked from commit 1576f81dfe0156514ec06b6051e5df7928a294e2)
(cherry picked from commit 745a2f5ec34d9833f208f2a819026f3cafd6ec21)
diff --git a/dev-support/docker/Dockerfile_aarch64 b/dev-support/docker/Dockerfile_aarch64
index c38256e..46818a6 100644
--- a/dev-support/docker/Dockerfile_aarch64
+++ b/dev-support/docker/Dockerfile_aarch64
@@ -69,8 +69,10 @@
         maven \
         openjdk-11-jdk \
         openjdk-8-jdk \
+        phantomjs \
         pinentry-curses \
         pkg-config \
+        python2.7 \
         python3 \
         python3-pip \
         python3-pkg-resources \
@@ -150,17 +152,6 @@
     && rm -rf /var/lib/apt/lists/*
 
 ###
-# Install phantomjs built for aarch64
-####
-RUN mkdir -p /opt/phantomjs \
-  && curl -L -s -S \
-    https://github.com/liusheng/phantomjs/releases/download/2.1.1/phantomjs-2.1.1-linux-aarch64.tar.bz2 \
-   -o /opt/phantomjs/phantomjs-2.1.1-linux-aarch64.tar.bz2 \
-  && tar xvjf /opt/phantomjs/phantomjs-2.1.1-linux-aarch64.tar.bz2 --strip-components 1 -C /opt/phantomjs \
-  && cp /opt/phantomjs/bin/phantomjs /usr/bin/ \
-  && rm -rf /opt/phantomjs
-
-###
 # Avoid out of memory errors in builds
 ###
 ENV MAVEN_OPTS -Xms256m -Xmx1536m
@@ -168,6 +159,9 @@
 # Skip gpg verification when downloading Yetus via yetus-wrapper
 ENV HADOOP_SKIP_YETUS_VERIFICATION true
 
+# Force PhantomJS to be in 'headless' mode, do not connect to Xwindow
+ENV QT_QPA_PLATFORM offscreen
+
 ###
 # Everything past this point is either not needed for testing or breaks Yetus.
 # So tell Yetus not to read the rest of the file: