6
Q
[zeromicro/go-zero]增加配置文件加载支持从环境传感器中读取传感器【完成】
A
回答
6
有没有任何文档或示例来展示如何使用它?
7
了解如何使用 ENV 变量进行系统配置
-
我们更改主函数中的配置加载
func main() { flag.Parse() var c config.Config #conf.MustLoad(*configFile, &c) conf.MustLoad(*configFile, &c, conf.UseEnv()) # enable env variable .......
-
更改配置文件/internal/etc/xxx-api.yaml
Name: ${SERVICE_NAME} Host: 0.0.0.0 Port: ${PORT} Timeout: ${TIMEOUT}
我们现在从环境变量加载配置
- 如果你在本地工作中使用 vscode,将这些 env 添加到 launch.json 是一个不错的选择
.vscode/launch.json { "version": "0.2.0", "configurations": [ { "name": "Launch Assets Api", "type": "go", "request": "launch", "mode": "debug", "program": "${workspaceFolder}/services/assets/api", "args": [], "env": { "SERVICE_NAME": "assets-api", "PORT": "8889", "TIMEOUT": "100000", }, }, }
希望对你有帮助
5
有一个env
标签可以使用环境变量。
type Config struct {
ServiceName string `json:",env=SERVICE_NAME"`
}
...
var c config.Config
conf.MustLoad(*configFile, &c)