如何更改 docker 镜像或容器中的 java 版本?

时间:2021-05-17 17:12:36

标签: java docker jenkins kubernetes openshift

在我的 Spring Boot 微服务项目中,其中一个微服务升级到了 java 11,这导致我现有的功能出现了一些问题。我想将该微服务中的 java 版本从 11 更改为 8。但我无法做到这一点,因为它通过 jenkins 自动创建为 docker 图像。

在 Gradle 文件中,我已经提到 java 版本为 1.8,但在 kubernetes 集群中仍然以某种方式仅针对此特定服务 java 升级到 11。

在服务器中使用以下命令确认java的版本。 "docker exec {container_id} java -version"

请建议我如何更改 docker 镜像或容器中的 java 版本?

是否可以仅通过运行 linux 命令来更改 java 版本?还是需要遵循其他一些步骤?

1 个答案:

答案 0 :(得分:1)

@RakshithM 是的,Jenkins 必须参考 Dockerfile 来构建 docker 容器,如果您发现了,那么您可以按照@David 的建议进行操作。供您参考 https://docs.docker.com/language/java/build-images/ ,任何容器都指具有我们的应用程序运行的基本环境的基础映像,该环境基本上以 docker 文件中的 FROM 开头。 例如:

FROM openjdk:16-alpine3.13

这里我们的容器指的是 openjdk:16 图像,它位于 minimal linux environment with java 16 的顶部,其他工具包含在 dockerfile 中。因此,在您的情况下,如果您找到 Dockerfile,那么您可以将其更改为您需要的 Java 版本。