准备环境所需程序包
Alpine作为JDK的基础镜像,需要准备glibc安装包,否则无法安装jdk,具体原因我也不知道,如果知晓的“阅友”可在评论区留言,我也学习一下,感谢!
glibc官网地址:GitHub直通车
一:glibc软件包
百度网盘下载地址:https://pan.baidu.com/s/12bDpNr6Bw5JVKLqb2tpOfQ
提取码:h4uf
如果不想去百度网盘下载,可使用以下命令直接从官网下载,但是有点慢哟。
wget https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.35-r0/glibc-2.35-r0.apk
二:JDK源码包
百度网盘下载地址:https://pan.baidu.com/s/1JXHwKYHzT5yvQkvS9t2A-A
提取码:whab
构建DockerFile
vim alpine_jdk // 创建构建文件
# 指定基础镜像
FROM alpine:3.16
# 设置作者信息
LABEL maintainer="TOMCAT Docker Maintainers <chlstudy@163.com>"
# 设置工作目录
WORKDIR /usr/local/
# 上传glibc安装包、配置glibc安装签名密钥、安装本地glibc、删除本地缓存
COPY glibc-2.30-r0.apk /usr/local/
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/' /etc/apk/repositories \
&& apk update \
&& wget -q -O /etc/apk/keys/sgerrand.rsa.pub https://alpine-pkgs.sgerrand.com/sgerrand.rsa.pub \
&& apk add glibc-2.30-r0.apk \
&& rm -rf /var/cache/apk/* glibc-2.30-r0.apk
# 上传jdk源码包至/usr/local/目录下
ADD jdk-8u291-linux-x64.tar.gz /usr/local/
# 配置环境变量
ENV JAVA_HOME=/usr/local/jdk1.8.0_291
ENV CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV PATH=$JAVA_HOME/bin:$PATH
构建镜像并启动容器
docker build -f alpine_jdk -t alpine_jdk:1.0 .
docker run -it --rm 9d017b6ce5d0 sh
在容器内执行“java -version”查看JAVA版本号
希望此文档对您有所帮助,祝你工作顺利!!!