docker构建jre镜像

作者:吴业亮

博客:http://blog.csdn.net/wylfengyujiancheng

一、准备条件:

1、因为java依赖glibc,所以基础镜像使用的是alpine-glibc而非alpine

2、下载jre,地址:

https://www.java.com/en/download/manual.jsp

二、精简jre包

1、解压

# tar -zxvf jre-8u221-linux-i586.tar.gz

2、进入目录

cd  jre1.8.0_221/

3、删除文本文件

rm -rf COPYRIGHT LICENSE README release THIRDPARTYLICENSEREADME-JAVAFX.txtTHIRDPARTYLICENSEREADME.txt Welcome.html

4、删除其他无用文件

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

5、重新打包所有文件

# tar zcvf jre8.tar.gz *

三、制作镜像

1、创建Dockerfile

# using alpine-glibc instead of alpine  is mainly because JDK relies on glibc
FROM docker.io/jeanblanchard/alpine-glibc
# author
MAINTAINER scc <wuyeliang>
# A streamlined jre
ADD jre8.tar.gz /usr/java/jdk/
# set env
ENV JAVA_HOME /usr/java/jdk
ENV PATH ${PATH}:${JAVA_HOME}/bin
# run container with base path:/opt
WORKDIR /opt

2、构建

docker build -t java8:1.1 .

参考:

https://my.oschina.net/shyloveliyi/blog/1627020
发布了235 篇原创文章 · 获赞 120 · 访问量 81万+

猜你喜欢

转载自blog.csdn.net/wylfengyujiancheng/article/details/99455104