在我的 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 版本?还是需要遵循其他一些步骤?
答案 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 版本。