Docker 构建jdk8 镜像

1、下载jdk8安装包并上传至已创建的特定目录(此处使用/usr/local/docker)

2、相同目录下创建Dockerfile

 3、Dockerfile内容如下

FROM centos:7

#2、指明该镜像的作者和电子邮箱
MAINTAINER zjk "604115781@qq.com"

#3、在构建镜像时,指定镜像的工作目录,之后的命令都是基于此工作目录,如果不存在,则会创建目录
WORKDIR /usr/local/docker

#4、一个复制命令,把jdk安装文件复制到镜像中,语法 ADD SRC DEST ,ADD命令具有自动解压功能
ADD jdk-8u201-linux-x64.tar.gz /usr/local/docker

#5、配置环境变量,此处目录为tar.gz包解压后的名称,需提前解压知晓:
ENV JAVA_HOME=/usr/local/docker/jdk1.8.0_201
ENV CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV PATH=$JAVA_HOME/bin:$PATH

#6、设置启动命令
CMD ["java","-version"]

 4、在Dockerfile所在目录执行构建命令

docker build -t jdk8_image:V1.0 .

 

 5、构建完成后查看镜像列表

docker images

 

 6、通过镜像构建容器并后台启动,run具备create和start的功能。

docker run -itd --name jdk_container jdk8_image:V1.0 /bin/bash

7、查看已运行容器列表

 

8、此时在宿主机上执行“java -version”发现jdk并未生效,因为jdk只运行在容器内,这也说明了容器内的环境与外界环境无关联。

9、查看jdk在容器内部是否生效,需进入容器内部执行。

 可以看到,容器内部jdk8已生效。

10、退出容器:exit

原文地址:https://www.cnblogs.com/lansetuerqi/p/12551690.html