搭建ORACLE_JDK8基础镜像
下载oraclejdk8
进入oracle下载目录:https://www.oracle.com/java/technologies/downloads/
选择我们需要的版本,我们镜像默认使用的是ARM64的centos,所以这里选择jdk-8u311-linux-x64.tar.gz,这边需要我们登陆一下oracle.这里我们用邮箱注册一下就好了.
下载完成后,以下为我的目录结构.
- Dockerfile (生成镜像的编排文件)
- jdk-8u311-linux-x64.tar.gz (刚才下载的jdk文件)
- jar目录(由基础镜像启动的dcn程序)
构建基础镜像
在dockerhub中选择centos7镜像https://hub.docker.com/_/centos?tab=tags
Dockerfile文件
#!/bin/bash
# 使用centos作为基础镜像
FROM centos
# 维护人信息
MAINTAINER lisongyu li.songyu@qq.com
# 切换到usr/local 目录下,没有则创建
WORKDIR /usr/local/jdk
# 将下载的jdk 的压缩包拷贝到镜像中,注意 ADD和COPY的区别,ADD 会解压,COPY不会解压
ADD jdk-8u311-linux-x64.tar.gz /usr/local/jdk
# 设置JAVA_HOME 的环境变量
ENV JAVA_HOME /usr/local/jdk/jdk1.8.0_311
# 设置JAVA 环境
ENV CLASSPATH=$JAVA_HOME/bin:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
# 将java可执行文件设置到PATH中,这样就可以使用java命令了
ENV PATH=.:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
# 容器启动后执行命令
CMD ["java","-version"]
生成基础镜像
docker build -t centos-jdk8:v1.0 .
我们可以使用
docker run
验证一下镜像的情况.由于我笔记本电脑是mac M1版本的.amd64的版本无法使用,所以我切换了jdk为jdk-8u311-linux-aarch64.tar.gz版本的;出现如下信息就可以说明jdk的基础镜像就打好了.