华为云鲲鹏服务器测试使用-JDK基础镜像构建

近期的大数据项目需要使用ARM环境的服务器;为啥选择华为云呢,因为华为云鲲鹏服务器,具备多核高并发特点,非常适合AI、大数据、HPC、云手机/云游戏等场景,满足了我们的需求,所以选择了华为云鲲鹏服务器(支持国产)。


制作JDK基础镜像

下载jdk软件

官网地址:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
Alt
本次选择的版本是ARM64版的软件包(jdk-8u271-linux-aarch64.tar.gz)
注意:下载可能需要注册账号

下载alpine镜像

下载apline基础镜像,在dokcer hub上查找适合的镜像即可;需要注意的是,jdk在alpine中运行需要安装glibc,故本次选择的版本:cyphernode/alpine-glibc-base:arm64-v3.11.0_2.29-0

1
dokcer pull cyphernode/alpine-glibc-base:arm64-v3.11.0_2.29-0

Dockerfile

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#1.指定基础镜像,并且必须是第一条指令
FROM cyphernode/alpine-glibc-base:arm64-v3.11.0_2.29-0

#2.指明该镜像的作者和其电子邮件
MAINTAINER lshcc@163.com

#3.设置时间
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone

#4.将一些安装包复制到镜像中,语法:ADD/COPY <src>... <dest>
## ADD与COPY的区别:ADD复制并解压,COPY仅复制
ADD jdk-8u271-linux-aarch64.tar.gz /usr/local/

#5.配置环境变量
ENV JAVA_HOME=/usr/local/jdk1.8.0_271
ENV JRE_HOME=${JAVA_HOME}/jre
ENV CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
ENV PATH=$PATH:${JAVA_HOME}/bin:$JRE_HOME/bin

运行Dockerfile

新建目录,将Dockerfile和JDK软件包放在同一目录下

1
2
3
[root@test-0002 pkg]# ls
Dockerfile jdk-8u271-linux-aarch64.tar.gz
[root@test-0002 pkg]#

构建JDK基础镜像

1
2
# 镜像名称自定义
docker build -t jdk8-arm64:v1 .

测试

运行docker镜像,查看java版本
Alt