为什么要创建最小的java8镜像?
从docker仓库拉取下来的java镜像643MB, tt/java8是删除了不必要文件后构建的镜像。
步骤:
1.准备jre:jre-8u311-linux-x64.tar.gz上传并解压root@box:/opt/software# sudo tar -zxvf jre-8u311-linux-x64.tar.gz -C ../module/2.进入到jre目录,删除不必要的文件
box@box:/opt/software$ cd /opt/module/jre1.8.0_311
box@box:/opt/module/jre1.8.0_311$ sudo rm -rf COPYRIGHT LICENSE README release THIRDPARTYLICENSEREADME-JAVAFX.txt THIRDPARTYLICENSEREADME.txt Welcome.html
box@box:/opt/module/jre1.8.0_311$ sudo rm -rf lib/plugin.jar
lib/ext/jfxrt.jar
bin/javaws
lib/javaws.jar
lib/desktop
plugin
lib/deploy*
lib/*javafx*
lib/*jfx*
lib/amd64/libdecora_sse.so
lib/amd64/libprism_*.so
lib/amd64/libfxplugins.so
lib/amd64/libglass.so
lib/amd64/libgstreamer-lite.so
lib/amd64/libjavafx*.so
lib/amd64/libjfx*.so
3.重新打包
root@box:/opt/module/jre1.8.0_311# ll 总用量 24 drwxr-xr-x 6 10143 10143 4096 11月 9 09:56 ./ drwxr-xr-x 5 root root 4096 11月 9 09:52 ../ drwxr-xr-x 2 10143 10143 4096 11月 9 09:56 bin/ drwxr-xr-x 4 10143 10143 4096 9月 27 20:26 legal/ drwxr-xr-x 13 10143 10143 4096 11月 9 09:56 lib/ drwxr-xr-x 4 10143 10143 4096 9月 27 20:26 man/ root@box:/opt/module/jre1.8.0_311# tar zcvf jre8.tar.gz *
4.在当前目录下创建Dockerfile
root@box:/opt/module/jre1.8.0_311# touch Dockerfile
root@box:/opt/module/jre1.8.0_311# vim Dockerfile
FROM docker.io/jeanblanchard/alpine-glibc
MAINTAINER tt
ADD jre8.tar.gz /usr/java/jdk/
ENV JAVA_HOME /usr/java/jdk
ENV PATH ${PATH}:${JAVA_HOME}/bin
WORKDIR /opt
5.执行生成镜像命令
docker build -t tt/java8:v1.0 .6.查看并测试最小化java8镜像是否可用
测试方法参考 Docker——使用Dockerfile制作java程序镜像



