【问题标题】:Identify platform on which Spring boot application is running识别运行 Spring Boot 应用程序的平台
【发布时间】:2019-11-15 17:46:54
【问题描述】:

我有一个 Spring Boot 应用程序。该应用程序旨在部署到 AWS、EKS、Azure 和 VM。这一切都由 Jenkins 文件和 CI/CD 工具(如 Jenkins 和 Spinnker 等)完成和控制。

我可以根据需要将 targetDeployment 类型变量编辑到任何平台,然后部署就会发生。

有没有一种方法可以在 Spring Boot 应用程序本身中构建来识别当前实例在哪个平台上运行?

【问题讨论】:

  • 你无法从 Spring Boot 中知道正在使用什么平台。只需创建一个环境变量并存储平台名称值并从您的 Spring Boot 应用程序中读取它

标签: spring spring-boot platform


【解决方案1】:

您可以在部署时将特定于基础架构的配置文件添加到 Spring Boot,然后通过执行器信息端点公开它。

【讨论】:

    【解决方案2】:

    在 Azure 和 aws 中有一个可用的元数据服务,可在 http://169.254.169.254/ 下访问。根据答案,您将能够知道您的服务在哪里运行。我建议您查看文档:

    【讨论】:

      猜你喜欢
      • 2015-10-10
      • 2022-01-09
      • 2018-04-21
      • 2022-01-04
      • 2023-03-16
      • 2020-10-26
      • 1970-01-01
      • 2020-10-03
      • 1970-01-01
      相关资源
      最近更新 更多