docker使用alpine构建jdk21镜像的详细步骤

2024-04-16 0 279
目录
  • 1.问题描述
  • 2.遇到问题
  • 3.详细步骤
    • 1.安装docker
    • 2.拉取alpine
    • 3.进入工作目录
    • 4.编辑Dockerfile
    • 5.构建镜像
    • 6.等待构建完成
  • 总结

    1.问题描述

    项目使用的是springboot3.0,进行docker打包的时候需要jdk17以上,索性我就使用jdk21了,但是进行docker打包的时候,没有找到jdk21的镜像包,所以就想自己打包一个。

    2.遇到问题

    1.最初想要基于centOS去封装一个镜像,但是觉得这个包体会比较大,然后了解到了alpine这个基础镜像,打算使用这个作为基础镜像,最初Dockerfile如下:

    FROM alpine:latest

    # 定义环境变量,以便后续使用
    ENV JAVA_HOME /opt/jdk
    ENV PATH $PATH:$JAVA_HOME/bin

    # 安装必要的工具和依赖,libc6-compat用于兼容glibc环境
    RUN apk add –no-cache libc6-compat

    # 下载和解压JDK 21
    COPY jdk21 /opt/jdk/

    # 验证Java是否安装成功
    RUN java -version

    2.镜像打包成功了,但是java -version报错了:

    Unable to load jimage library libjimage.so

    3.最后尝试了直接使用apk add方法,最终的Dockerfile文件如下:

    # 1.指定基础镜像
    FROM alpine:latest

    # 2.添加说明等信息
    LABEL name=bkp description=\”jdk21 base on alpine image\”

    # 3.安装jdk(这一步很慢,请耐心等待,我安装大概花费了10分钟)
    RUN apk add –no-cache –no-cache openjdk21

    # 4.查看java版本
    CMD [\”java\”,\”-version\”]

    3.详细步骤

    1.安装docker

    2.拉取alpine

    docker pull alpine:latest

    3.进入工作目录

    # 路径看自己喜好就行
    cd workspace/docker/jdk21

    4.编辑Dockerfile

    vim Dockerfile

    添加以下内容

    # 1.指定基础镜像
    FROM alpine:latest

    # 2.添加说明等信息
    LABEL name=bkp description=\”jdk21 base on alpine image\”

    # 3.安装jdk(这一步很慢,请耐心等待,我安装大概花费了10分钟)
    RUN apk add –no-cache –no-cache openjdk21

    # 4.查看java版本
    CMD [\”java\”,\”-version\”]

    5.构建镜像

    注意:最后面有一个点 .

    docker build -t java-alpine:21 .

    6.等待构建完成

    我们就得到了一个基于alpine包含jdk21的docker镜像

    总结

    到此这篇关于docker使用alpine构建jdk21镜像的文章就介绍到这了,更多相关docker alpine构建jdk21镜像内容请搜索悠久资源网以前的文章或继续浏览下面的相关文章希望大家以后多多支持悠久资源网!

    收藏 (0) 打赏

    感谢您的支持,我会继续努力的!

    打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
    点赞 (0)

    悠久资源 Linux服务器 docker使用alpine构建jdk21镜像的详细步骤 https://www.u-9.cn/server/linux/185815.html

    常见问题

    相关文章

    发表评论
    暂无评论
    官方客服团队

    为您解决烦忧 - 24小时在线 专业服务