zoukankan      html  css  js  c++  java
  • 使用alpine制作最小化的JDK基础镜像

    注意:这里使用的是oracle的JRE,版本是1.8。

    1、解压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

    2、重新打包所有文件(不打包也可以,在Dockerfile里ADD这个目录即可,当前精简完jre目录大小是107M,压缩后是41M)

      tar zcvf jre8.tar.gz *

    3、创建Dockerfile

    # 基础镜像

    FROM 内网ip/仓库名/alpine:3.10

    # 作者

    MAINTAINER xiaobao2

    # 添加glibc依赖

    RUN apk --no-cache add ca-certificates &&

      wget -q -O /etc/apk/keys/sgerrand.rsa.pub https://alpine-pkgs.sgerrand.com/sgerrand.rsa.pub &&

      wget https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.29-r0/glibc-2.29-r0.apk &&

      apk add glibc-2.29-r0.apk

    # 安装jre

    ADD jre8.tar.gz /usr/java/jdk/

    # 设置变量

    ENV JAVA_HOME /usr/java/jdk

    ENV PATH ${PATH}:${JAVA_HOME}/bin

    # 运行容器的工作目录

    WORKDIR /opt 

    4、构建(整体大小大概是125M)

    docker build -t 内网ip/仓库名/java:8 .

    5、测试运行

    # docker run -it 内网ip/仓库名/java:8 /opt

    # java -version

  • 相关阅读:
    HDU 4814 Golden Radio Base
    我对Swift的几点疑问
    【UTR #1】ydc的大树
    jsp中的隐含9对象
    动作元素
    指令元素
    JSP语法
    设计模式六大原则(6):开闭原则
    设计模式六大原则(5):迪米特法则
    设计模式六大原则(4):接口隔离原则
  • 原文地址:https://www.cnblogs.com/xiaobao2/p/11468778.html
Copyright © 2011-2022 走看看