首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏轩辕镜像

    Eclipse Temurin OpenJDK Docker 容器化部署指南

    镜像准备镜像拉取命令展开代码语言:BashAI代码解释dockerpullxxx.xuanyuan.run/library/eclipse-temurin:{TAG}其中{TAG}为镜像版本标签,推荐使用官方维护的稳定版本 本文以推荐标签latest为例,执行以下命令拉取最新版镜像:展开代码语言:BashAI代码解释dockerpullxxx.xuanyuan.run/library/eclipse-temurin:latest 可通过轩辕镜像标签列表https://xuanyuan.cloud/r/library/eclipse-temurin/tags查看所有可用标签,选择时需考虑:生产环境建议使用具体版本标签(如21.0.2 定期更新镜像:关注轩辕镜像文档https://xuanyuan.cloud/r/library/eclipse-temurin获取安全更新,及时升级以修复漏洞。 镜像拉取:eclipse-temurin采用dockerpullxxx.xuanyuan.run/library/eclipse-temurin:{TAG}格式,推荐使用具体版本标签确保稳定性。

    70610编辑于 2025-11-27
  • 【将Java应用打包为Docker镜像】

    以下是基于不同场景的配置示例: 案例1:Spring Boot JAR应用 # 使用官方OpenJDK镜像作为基础 FROM eclipse-temurin:17-jdk-jammy # 设置工作目录 app.jar # 暴露应用端口(根据实际修改) EXPOSE 8080 # 启动命令 ENTRYPOINT ["java", "-jar", "app.jar"] 案例2:传统Java SE应用 FROM eclipse-temurin run -p 8080:8080 -d java-image-name -p:端口映射(主机端口:容器端口) -d:后台运行 优化建议 多阶段构建 减少最终镜像大小,丢弃构建阶段的依赖: FROM eclipse-temurin /gradlew build FROM eclipse-temurin:17-jre WORKDIR /app COPY --from=builder /app/build/libs/app.jar

    43910编辑于 2025-12-17
  • 来自专栏轩辕镜像

    Docker 拉取部署 OpenJDK 全指南:替代方案、实操步骤与最佳实践

    以下步骤以使用最广泛的eclipse-temurin为例,其他替代镜像的操作逻辑一致。 :21-jre-ubuntu-jammydockerpulldocker.xuanyuan.run/eclipse-temurin:21-jre-ubuntu-jammy开发编译(Alpine轻量)eclipse-temurin :17-jdk-alpine3.22dockerpulldocker.xuanyuan.run/eclipse-temurin:17-jdk-alpine3.22最新LTS版(默认Ubuntu)eclipse-temurin :latestdockerpulldocker.xuanyuan.run/eclipse-temurin:latest开发编译(Ubuntu)eclipse-temurin:11-jdk-ubuntu-jammydockerpulldocker.xuanyuan.run /eclipse-temurin:11-jdk-ubuntu-jammy轻量运行JAR包(Alpine)eclipse-temurin:21-jre-alpine3.22dockerpulldocker.xuanyuan.run

    1.6K10编辑于 2026-01-02
  • 成功优化!Java 基础 Docker 镜像从 674MB 缩减到 58MB 的经验分享

    为了给你一个基础镜像大小的概念,以下是openjdk:17-jdk-slim(瘦身版)和eclipse-temurin:17-jdk-alpine镜像大小的比较:已知应用程序(jar)的大小约为20MB 使用 eclipse-temurin:17-jdk-alpine 作为基础镜像。 AS jre-builder3 |4 | # Install binutils, required by jlinkERROR: failed to solve: eclipse-temurin:17 :17-jdk-alpine 作为基础镜像构建完镜像后,我们得到了这个结果:看看两个镜像的大小,使用 eclipse-temurin:17-jdk-alpine 作为基础镜像的镜像大小为180MB,比使用 在第一阶段,我们使用 eclipse-temurin:17-jdk-alpine 镜像来使用 jlink 构建自定义JRE镜像。

    1.5K10编辑于 2024-11-05
  • 来自专栏扶墙集

    Cloudflare Containers 避坑指南

                                                                                                                                                                                                0.0s => ERROR [internal] load metadata for docker.io/library/eclipse-temurin                                                                                                                                                  1.6s =>[auth] library/eclipse-temurin                                                                                                                                                           0.0s ------ >[internal] load metadata for docker.io/library/eclipse-temurin :24-jre: ------ Dockerfile:1 -------------------- |>>> FROM eclipse-temurin:24-jre |ADD container-java.jar 最后,我用Scala写了个程序打包成container,部署成功之后,运行效果如下: 用的Dockerfile也贴下供参考(偷懒,直接把Scala项目的onejar拿过来打包的): FROM eclipse-temurin

    57810编辑于 2025-06-26
  • 来自专栏dongfanger

    SpringBoot官方笔记8其他

    Container Images FROM eclipse-temurin:17-jre as builder WORKDIR application ARG JAR_FILE=target/*.jar COPY ${JAR_FILE} application.jar RUN java -Djarmode=layertools -jar application.jar extract FROM eclipse-temurin

    31810编辑于 2023-07-20
  • 来自专栏程序猿DD

    GraalVM 加持 Java 容器化,速度起飞!

    SpringBootGracefulShutdownExample-0.0.1-SNAPSHOT.jar Dockerfie.bad: 使用 bash 启动脚本, 这会导致终止信号无法传递 FROM eclipse-temurin 也有很多方法; 比如常见的直接使用 CMD 或 ENTRYPOINT 指令运行 java 程序: Dockerfile.direct: 直接运行 java 程序, 能够正常接受到终止信号 FROM eclipse-temurin Dockerfile.bash-c: 采用 bash -c 执行, 在命令简单情况下可以做到优雅关闭 FROM eclipse-temurin:11-jdk COPY entrypoint.bad.sh 比如下面的例子: Dockerfile.tini: 加了 tini 也无法优雅关闭的情况 FROM eclipse-temurin:11-jdk RUN set -e \     && apt update 引用链接 [1] eclipse-temurin: https://hub.docker.com/_/eclipse-temurin [2] ibm-semeru-runtimes: https://hub.docker.com

    1.7K40编辑于 2023-04-04
  • 来自专栏云原生生态圈

    Java 应用容器化最佳实践

    SpringBootGracefulShutdownExample-0.0.1-SNAPSHOT.jar Dockerfie.bad: 使用 bash 启动脚本, 这会导致终止信号无法传递 FROM eclipse-temurin 也有很多方法; 比如常见的直接使用 CMD 或 ENTRYPOINT 指令运行 java 程序: Dockerfile.direct: 直接运行 java 程序, 能够正常接受到终止信号 FROM eclipse-temurin Dockerfile.bash-c: 采用 bash -c 执行, 在命令简单情况下可以做到优雅关闭 FROM eclipse-temurin:11-jdk COPY entrypoint.bad.sh 比如下面的例子: Dockerfile.tini: 加了 tini 也无法优雅关闭的情况 FROM eclipse-temurin:11-jdk RUN set -e \ && apt update 引用链接 [1]eclipse-temurin: https://hub.docker.com/_/eclipse-temurin [2]ibm-semeru-runtimes: https://hub.docker.com

    2.6K30编辑于 2023-01-09
  • 来自专栏Java开发

    结合 Docker 部署 Java 应用的详细实践指南

    /src RUN mvn package -DskipTests # 第二阶段:运行时环境 FROM eclipse-temurin:17-jre-alpine WORKDIR /app COPY - RUN mvn -pl module1,module2 clean package -DskipTests # 服务1镜像 FROM eclipse-temurin:17-jre-alpine WORKDIR from=builder /app/module1/target/*.jar app.jar ENTRYPOINT ["java", "-jar", "app.jar"] # 服务2镜像 FROM eclipse-temurin

    1.4K31编辑于 2025-07-04
  • Spring Cloud应用容器化实战:使用Docker与Jib构建高效镜像

    /src RUN mvn clean package -DskipTests # 第二阶段:运行阶段 FROM eclipse-temurin:17-jre-jammy RUN groupadd -r FROM eclipse-temurin:17-jre-jammy # 使用非root用户运行 RUN groupadd -r spring && useradd -r -g spring spring FROM eclipse-temurin:17-jre-jammy ARG JAR_FILE=target/*.jar ARG PROFILE=dev COPY ${JAR_FILE} app.jar /src RUN mvn package -DskipTests # 运行阶段 FROM eclipse-temurin:17-jre-alpine COPY --from=builder /app/ 在选择基础镜像时,建议优先考虑: 官方维护的轻量级镜像(如eclipse-temurin:17-jre-alpine) 定期更新的安全补丁版本 经过安全扫描认证的镜像源 支持eBPF安全监控的运行时镜像

    32210编辑于 2025-11-29
  • 来自专栏微言码道

    构建更好的Docker镜像的一些技巧

    我现在用的都是eclipse-temurin这个Java基础镜像, 这也是Docker官方提供的. 使用统一的定制基础镜像 有时候你可能需要在基础镜像基础之上,添加一些定制的能力或功能. FROM my-company/base-java:17.0.3 比如,构建了一个基于eclipse-temurin的自己的定制基础镜像. FROM eclipse-temurin:17.0.6_10-jre RUN useradd -ms /bin/bash lingen USER lingen 定义一个用户是非常简单的, 如上代码所示.

    49220编辑于 2023-11-02
  • 来自专栏DevOps

    【Spring Boot 升级系列】第二篇:微服务容器化实践

    FROM eclipse-temurin:17 as build ARG MAVEN_VERSION=3.8.5 ARG BASE_URL=https://downloads.apache.org/maven RUN mvn clean package COPY target/*.jar app.jar ​ FROM eclipse-temurin:17-jre-alpine as production COPY

    35010编辑于 2024-05-06
  • 来自专栏Spring

    【SpringBoot系列】SpringBoot + Docker :SpringBoot应用程序容器化

    FROM eclipse-temurin:17 as build ARG MAVEN_VERSION=3.8.5 ARG BASE_URL=https://downloads.apache.org/maven RUN mvn clean package COPY target/*.jar app.jar FROM eclipse-temurin:17-jre-alpine as production COPY

    87910编辑于 2024-04-18
  • 来自专栏Java开发

    Java 框架实操内容:从入门到精通的 Spring Boot 3.x 与 MyBatis-Plus 实战教程

    Dockerfile配置# 基础镜像FROM eclipse-temurin:17-jdk-alpine# 设置工作目录WORKDIR /app# 复制依赖文件COPY mvnw .COPY .mvn -DskipTestsRUN mkdir -p target/dependency && (cd target/dependency; jar -xf ../*.jar)# 创建运行时镜像FROM eclipse-temurin

    68210编辑于 2025-07-24
  • Java工程化:从规范到部署的完整实践

    容器化部署Dockerfile构建标准镜像:FROM eclipse-temurin:17-jreCOPY target/app.jar /app.jarENTRYPOINT ["java","-jar

    7610编辑于 2026-03-22
  • 来自专栏终码一生

    SpringBoot+Docker:高效容器化的最佳实践

    springBootDockerized-0.0.1-SNAPSHOT.jar"] 但非常重要的是,我们不需要 JDK,我们只需要 JRE java 运行时环境 我建议在OpenJDK官方链接中使用 JRE 层,您可以找到以下内容: eclipse-temurin 0.0.1-SNAPSHOT.jar #ENTRYPOINT ["java" , "-jar" , "/springBootDockerized-0.0.1-SNAPSHOT.jar"] FROM eclipse-temurin /target/*.jar app.jar RUN java -Djarmode=layertools -jar app.jar extract FROM eclipse-temurin:17.0.5

    3K10编辑于 2024-02-22
  • 来自专栏后端开发

    资源请求与限制配置失衡引发的 OOMKilled:一场由 JVM 与 K8s limits 不匹配导致的生产故障复盘

    * 1024 * 1024]); Thread.sleep(150); } }}Dockerfile(多阶段构建,尽量精简镜像体积):# buildFROM eclipse-temurin :17-jdk-jammy AS buildWORKDIR /srcCOPY MemoryEater.java .RUN javac MemoryEater.java# runFROM eclipse-temurin

    55820编辑于 2025-09-15
  • 【Dockerfile 运维部署案例分析】

    Dockerfile 实现: # 使用官方 OpenJDK 镜像 FROM eclipse-temurin:17-jdk-jammy as builder WORKDIR /workspace/app

    19310编辑于 2025-12-17
  • 来自专栏墨白的Java基地

    【部署】SpringBoot 项目打包为 Docker Images 并上传到 Docker Hub

    Dockerfile 文件 内容如下: # syntax=docker/dockerfile:1 # https://docs.docker.com/language/java/build-images/ FROM eclipse-temurin

    1.2K20编辑于 2022-09-02
  • 来自专栏Tencent云服务征文

    CloudBase AI Toolkit | 没有服务器,怎么云化部署前后端项目....

    docs.docker.com/develop/develop-images/multistage-build/#use-multi-stage-builds#FROM alpine:3.13FROM eclipse-temurin jwgl.jarCMD ["java", "-jar", "/jwgl.jar"]这是我根据 cloudbase 文档中的样例进行修改的,除了基本的项目配置,我将基础镜像由 alpine:3.13 修改成了 eclipse-temurin

    1K40编辑于 2025-07-06
领券