【发布时间】:2016-04-07 19:50:29
【问题描述】:
我正在为我的引导代码寻找一种快速、简单的方法来检测它是否在 AWS 上运行(与本地环境相反)。
我唯一能想到的就是尝试访问一些实例元数据,例如 @Value("${ami-id:N/A}") String ami;,然后进行 if 检查。我可以将其设为@Conditional,但我希望框架可能已经提供了类似的东西(即“云”配置文件在 Cloud Foundry 上运行时如何自动激活)
【问题讨论】:
-
“云”配置文件由 CF buildpack 自动设置,因此您不会在 AWS 上获得它。不确定是否有任何自动设置的 EC2 环境变量。
-
不确定这对您的情况是否有帮助,但有一个注释可以仅在 AWS 上运行时有条件地定义 bean:
org.springframework.cloud.aws.context.annotation.ConditionalOnAwsCloudEnvironment -
#Alain - 这就是答案,谢谢
标签: spring-cloud