Bootstrap

创建基于oracle jdk8的自定义docker镜像

创建基于oracle jdk8的自定义docker镜像

1:查看服务器java版本:

如果服务器的版本是open-jdk,则进行如下操作

拷贝相关jdk压缩包(.tar.gz后缀)到服务器目录(例:/usr/local)

解压:

tar -zxvf /usr/local/jdk-8u351-linux-x64.tar.gz -C ./

配置环境变量:

vim /etc/profile

在文件结尾追加如下代码:

export JAVA_HOME=/usr/local/jdk1.8.0_351

export JRE_HOME=${JAVA_HOME}/jre

export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH

export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin

export PATH=$PATH:${JAVA_PATH}

查看安装了哪些jdk:
sudo update-alternatives --display java

设置需要的jdk

alternatives --install /usr/bin/java java /usr/local/jdk1.8.0_351/bin/java alternatives --install /usr/bin/java javac /usr/local/jdk1.8.0_351/bin/javac 1

设置java版本
sudo update-alternatives --config java

设置javac版本
alternatives --config javac

上述几部操作成功之后输入java -vsersion进行验证

创建oracle-jdk文件夹

注意路径,我的完整路径是/usr/local/share/oracle-jdk

sudo mkdir oracle-jdk

移动jdk包到oracle-jdk文件夹

sudo mv ./jdk-8u351-linux-x64.tar.gz ./oracle-jdk/

创建Dockerfile

sudo touch Dockerfile

编辑Dockerfile

sudo vi Dockerfile

接着把下面代码复制到Dockerfile中

FROM centos

# 作者名

MAINTAINER Dr.Monster

# 防止中文乱码

ENV LANG C.UTF-8

ADD jdk-8u351-linux-x64.tar.gz /usr/local

ENV JAVA_HOME /usr/local/jdk1.8.0_351

ENV JRE_HOME /usr/local/jdk1.8.0_351/jre

ENV CLASSPATH $CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

ENV PATH $JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH

# 启动容器执行的命令,仅用于验证安装配置是否正确,生产环境使用需注释后再build

ENTRYPOINT ["java","-version"]

注意红色字体部分与本地的环境变量地址一致

接着保存退出,然后生成镜像

sudo docker build -t oracle-jdk:8 .

后面有个点别忘记了

构建完成后,查看镜像库

sudo docker images

验证安装配置是否正确

sudo docker run oracle-jdk:8

给镜像打上tag

docker tag oracle-jdk:8 10.20.0.9:9991/oracle-jdk

推送到镜像仓库上

docker push 10.20.0.9:9991/oracle-jdk

在工程里引入对应的jdk镜像

然后就没有然后了......

;