当前位置: 首页 > news >正文

Java 1.8 docker 镜像制作

文章目录

  • 一、下载文件
  • 二、精简JRE
  • 三、Dockerfile
  • 四、构建镜像
  • 五、容器测试


一、下载文件

  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. 测试
    在这里插入图片描述
http://www.lryc.cn/news/308395.html

相关文章:

  • python中自定义报错
  • part1:sora技术
  • RK3568平台开发系列讲解(基础篇)文件私有数据
  • 跨时钟信号处理方法
  • OD(13)之Mermaid饼图和象限图
  • 基于springboot+vue的智能无人仓库管理系统
  • 图神经网络实战——图论
  • 【PHP进阶】Rabbitmq的实际使用
  • 如何解决机器视觉高速图像处理软件的加密需求?
  • Linux的条件变量
  • 【Python笔记-设计模式】状态模式
  • Pytorch 复习总结 5
  • Codeforces Round 930 (Div. 2)
  • c语言求平方与倒数序列的部分和
  • Vue-4
  • 【Acwing】差分矩阵
  • Linux系统加固:如何有效管理系统账号
  • 在Windows中安装PyTorch
  • 助力智能化农田作物除草,基于YOLOv7【tiny/l/x】不同系列参数模型开发构建农田作物场景下玉米苗、杂草检测识别分析系统
  • linux nasm汇编中调用printf不报错,但调用scanf报错。抛出了分段错误(核心转储)
  • Linux系统——Nginx负载均衡模式
  • 【自然语言处理之语言模型】讲解
  • 输入一个整数n,输出这个整数的二进制的0和1的个数
  • 初阶数据结构:链表相关题目练习(补充)
  • java: 错误: 不支持发行版本 5
  • springSecruity--->和springboot结合的跨域问题
  • 网关kong记录接口处理请求和响应插件 tcp-log-with-body的安装
  • ElasticSearch之Completion Suggester
  • ant 布局组件 组件等高设置
  • 不可多得的干货,网易的朋友给我这份339页的Android面经