博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Docker容器之最小JDK基础镜像
阅读量:6162 次
发布时间:2019-06-21

本文共 1601 字,大约阅读时间需要 5 分钟。

hot3.png

一、说明    

    1、使用的是Oracle的JRE不是openjdk。

    2、因为java依赖glibc,所以基础镜像使用的是alpine-glibc而非alpine,alpine-glibc大概是11.1M。

二、制作

    1、首先下载jre,下载地址是https://www.java.com/en/download/manual.jsp,大概是77M。

    2、解压jre包,删除根目录下文本文件,然后删除其他不必要文件。

#解压tar xvcf jre-8u161-linux-x64.tar.gz#进入目录cd jre1.8.0_161/#删除文本文件rm -rf COPYRIGHT LICENSE README release THIRDPARTYLICENSEREADME-JAVAFX.txtTHIRDPARTYLICENSEREADME.txt Welcome.html#删除其他无用文件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、重新打包所有文件(不打包也可以,在Dockerfile里ADD这个目录即可,当前精简完jre目录大小是107M,压缩后是41M)

tar zcvf jre8.tar.gz *

    4、创建Dockerfile

# using alpine-glibc instead of alpine  is mainly because JDK relies on glibcFROM docker.io/jeanblanchard/alpine-glibc# authorMAINTAINER scc 
# A streamlined jreADD jre8.tar.gz /usr/java/jdk/# set envENV JAVA_HOME /usr/java/jdkENV PATH ${PATH}:${JAVA_HOME}/bin# run container with base path:/optWORKDIR /opt

    5、构建(整体大小是122M)

docker build -t voole/java8:1.0 .

    6、测试运行

# docker run -it voole/java8:1.0/opt # java -versionjava version "1.8.0_161"Java(TM) SE Runtime Environment (build 1.8.0_161-b12)Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)

 

转载于:https://my.oschina.net/shyloveliyi/blog/1627020

你可能感兴趣的文章
垂死挣扎还是涅槃重生 -- Delphi XE5 公布会归来感想
查看>>
淘宝的几个架构图
查看>>
linux后台运行程序
查看>>
Python异步IO --- 轻松管理10k+并发连接
查看>>
Oracle中drop user和drop user cascade的区别
查看>>
登记申请汇总
查看>>
Android Jni调用浅述
查看>>
CodeCombat森林关卡Python代码
查看>>
(二)Spring Boot 起步入门(翻译自Spring Boot官方教程文档)1.5.9.RELEASE
查看>>
Shell基础之-正则表达式
查看>>
JavaScript异步之Generator、async、await
查看>>
讲讲吸顶效果与react-sticky
查看>>
c++面向对象的一些问题1 0
查看>>
售前工程师的成长---一个老员工的经验之谈
查看>>
Get到的优秀博客网址
查看>>
老男孩教育每日一题-第107天-简述你对***的理解,常见的有哪几种?
查看>>
Python学习--time
查看>>
在OSCHINA上的第一篇博文,以后好好学习吧
查看>>
Spring常用注解
查看>>
linux:yum和apt-get的区别
查看>>