golang yaml配置文件如何读取linux环境变量

yaml 配置文件#

平时 go 项目都是使用 yaml 作为配置文件,现在我想让 yaml 配置文件里的某些字段可以导入 linux 的环境变量,如下:

server:
  ip: ${SERVER_IP:127.0.0.1}
  port: ${SERVER_PORT:8000}

在网上看其他语言的,如果 linux 里有 SERVER_IP 和 SERVER_PORT 这两个环境变量则使用 linux 里的,如果没有则使用后面默认的 127.0.0.1 和 8000。在 github go 项目里也见有人这样写,但是我试了方法没有成功,希望看看大家的想法,谢谢。