Doker构建自定义的Java镜像

构建过程

    # 宿主镜像 https://hub.docker.com/search?q=alpine-glibc&type=image
    
    tar zxf jre-8u211-linux-x64.tar.gz
    cd jre1.8.0_211
    rm -rf COPYRIGHT LICENSE README release THIRDPARTYLICENSEREADME-JAVAFX.txt THIRDPARTYLICENSEREADME.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

    tar zcvf jre8.tar.gz *
    mv jre8.tar.gz  ../
    
    vim Dockerfile
    # using alpine-glibc instead of alpine  is mainly because JDK relies on glibc
    FROM docker.io/jeanblanchard/alpine-glibc
    # author
    MAINTAINER [email protected]
    # A streamlined jre
    ADD jre8.tar.gz /usr/java/jdk/
    # set env
    ENV JAVA_HOME /usr/java/jdk
    ENV PATH ${PATH}:${JAVA_HOME}/bin
    ENV CLASSPATH ${CLASSPATH}:${JAVA_HOME}/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
    # run container with base path:/opt
    WORKDIR /opt
    :wq
    
    # 构建镜像
    sudo docker build -t ygsama/zj-jre:1.8.0_211 .
    sudo docker images
    # 运行镜像
    sudo docker run -it ygsama/zj-jre:1.8.0_211
    # 推送镜像到Docker 仓库
    docker push ygsama/zj-jre:1.8.0_211 

目录结构

|-- .
|-- …
|-- Dockerfile
|-- jre1.8.0_211
|-- jre8.tar.gz
|-- jre-8u211-linux-x64.tar.gz

原创文章 95 获赞 219 访问量 29万+

猜你喜欢

转载自blog.csdn.net/zimou5581/article/details/94022748