Java 1.8 docker 镜像制作

本文介绍了如何下载并精简JRE,创建Dockerfile来基于Alpine镜像构建Java1.8镜像,包括设置glibc、解决中文乱码和环境变量,最后进行容器测试。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


一、下载文件

  1. glibc
    下载地址
    glibc-2.33-r0.apk
    glibc-bin-2.33-r0.apk
    glibc-i18n-2.33-r0.apk

  2. rsa
    sgerrand.rsa.pub

  3. jre 1.8
    jre-8u201-linux-x64.tar.gz

二、精简JRE

  1. 解压
tar -zxvf jre-8u201-linux-x64.tar.gz && mv jre1.8.0_201 jre
  1. 精简
cd jre && rm -rf !(bin|lib|man) && \
rm -rf ./lib/plugin.jar \
./lib/ext/jfxrt.jar \
./bin/javaws \
./lib/javaws.jar \
./lib/desktop \
./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 \
./lib/locale/!(zh*)
  1. 压缩
cd .. && tar zcvf jre.tar.gz jre/

三、Dockerfile

FROM alpine:3.15.11
WORKDIR /home

# 更换aline源、update
RUN echo "http://mirrors.aliyun.com/alpine/v3.15/community" > /etc/apk/repositories
RUN echo "http://mirrors.aliyun.com/alpine/v3.15/main" >> /etc/apk/repositories
RUN apk update && apk upgrade
RUN apk --no-cache add ca-certificates bash net-tools tzdata dmidecode
RUN rm -rf /var/cache/apk/*

# 安装glibc
COPY apk/glibc-2.33-r0.apk .
COPY apk/glibc-bin-2.33-r0.apk .
COPY apk/glibc-i18n-2.33-r0.apk .
COPY apk/sgerrand.rsa.pub /etc/apk/keys/sgerrand.rsa.pub
RUN apk add glibc-2.33-r0.apk glibc-bin-2.33-r0.apk glibc-i18n-2.33-r0.apk
RUN rm -rf *.apk

# 设置时间
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

# 解决中文乱码
RUN /usr/glibc-compat/bin/localedef -i en_US -f UTF-8 en_US.UTF-8
ENV LANG=en_US.UTF-8

# 安装jre
ADD jre.tar.gz .
ENV JAVA_HOME=/home/jre
ENV PATH=.:$PATH:$JAVA_HOME/bin

四、构建镜像

  1. 文件目录
    在这里插入图片描述
    在这里插入图片描述

  2. 构建镜像

docker build --tag java:1.8.0 .

五、容器测试

  1. 进入容器
docker run -it --privileged -v /dev/mem:/dev/mem \
-v /sys/class/net/ens160/address:/home/address --rm java:1.8.0 bash
  1. 测试
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值