创建一个JDK 镜像

  • 编译方式:dockerfile
  • Linux镜像:centos7
  • jdk:jdk1.8.0_144

构建一个基于centos7和jdk1.8的镜像。

1.拉取镜像

拉取Centos7 镜像,这里我是从daocloud中找的:

docker pull daocloud.io/library/centos:centos7

2、编译Dockerfile

新建一个文件,这里命名为jdkdockerfile,将对应的压缩包也copy过来

 

很多地方都是使用的Dockerfile这种固定名称,其实创建的时候可以通过 -f 来指定dockerfile

dockerfile 内容 

FROM daocloud.io/library/centos:centos7
#维护者信息
MAINTAINER  shuen

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

ENV JAVA_HOME /usr/local/jdk1.8.0_144

ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

ENV PATH $PATH:$JAVA_HOME/bin

 1、这里使用的镜像是上面下载的centos镜像;
2、jdk压缩包拷贝到dockerfile同级目录,如果在其它目录拷贝的时候可能出现找不到目录错误;
3、使用ADD指令会直接对jdk-8u144-linux-x64.gz进行解压缩,不用再单独的tar解压jdk了。

3、使用Dockerfile创建镜像

docker build -f jdkDokcerfile -t jdk8 

-f :指定要使用的Dockerfile路径;

--tag, -t: 镜像的名字及标签,通常 name:tag 或者 name 格式;可以在一次构建中为一个镜像设置多个标签。

更多详细信息可以查询:https://www.runoob.com/docker/docker-build-command.html 

查看以下是否成功 

这时候看到jdk的镜像增长到了580M。

4、 运行创建的镜像

​​​​​​​docker run -d -it jdk8 /bin/bash

上面包含两条指令,run创建容器和查看容器。

注意:创建容器的时候一定要使用 -it /bin/bash这种方式,要不然jdk的容器起来后 会马上退出。

 5、验证镜像中的jdk

进入容器

docker exec -it[ 容器ID|容器名称]

 

猜你喜欢

转载自blog.csdn.net/wangxuelei036/article/details/107509204