gpt4 book ai didi

java - 禁用本地 consul 配置

转载 作者:行者123 更新时间:2023-12-02 03:18:39 31 4
gpt4 key购买 nike

我在本地使用“consul-config”功能创建了一个简单的 micronaut 应用程序。我的代码可以连接领事键/值存储并获取属性。我的 bootstrap.yml 中有以下配置

micronaut:
application:
name: user-service
config-client:
enabled: true
consul:
client:
registration:
enabled: true
defaultZone: "${CONSUL_HOST:localhost}:${CONSUL_PORT:8500}"

一切都很好,但我不想在本地计算机上使用 consul,因为它涉及网络 Activity ,所以启动需要一些时间。我想避免在本地使用 consul,但在开发、测试和生产环境中需要它。

我的应用程序中有以下代码。 @Value 注释将尝试加载“db-schema”,如果找不到,则使用“local”作为默认值。因此,如果领事被禁用,那么我的应用程序应该使用“本地”,否则它应该根据领事配置加载值。

@Value("${db-schema:local}")
private String dbSchema;

如何在不更改代码且仅使用环境选项的情况下做到这一点?

我尝试设置 VM 选项“-Dmicronaut.config-client.enabled=false”,但它仍然加载 bootstrap.yml 并尝试连接 consul。

最佳答案

有多种方法可以做到这一点。一种是创建一个像 src/main/resources/application-local.yml 这样的文件,其中包含以下内容:

consul:
client:
registration:
enabled: false

并在您的本地环境中导出 MICRONAUT_ENVIRONMENTS=local

关于java - 禁用本地 consul 配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56943156/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com