为了账号安全,请及时绑定邮箱和手机立即绑定

Golang 在 Buffalo database.yml 中使用 bash 环境变量

Golang 在 Buffalo database.yml 中使用 bash 环境变量

Go
慕无忌1623718 2023-02-21 12:53:35
我是 Go 和 Buffalo 的新手,正在尝试在我的 database.yaml 中使用我的 bash 环境变量我试图在我的 database.yaml 中执行以下操作,但它无法解释我的 bash 环境变量的值localUseruser: ${localUser}我使用以下 bash 设置 localUserexport localUser="username" echo $localUser用户名谢谢你的帮助!!
查看完整描述

1 回答

?
莫回无

TA贡献1865条经验 获得超7个赞

Buffalo Pop 的配置database.yml支持以下语法。


production:

  host: "localhost"

  user: {{ envOr "localUser" "defaultuser" }}


test:

  dialect: "mysql"

  url: {{ envOr "TEST_DATABASE_URL" "mysql://user:pass@(localhost:3306)/test" }}

关键是envOr指令。可以想象,如果值存在production.user, 将被设置为来自环境变量的值localUser,但如果没有环境变量,它将回退到其默认值“defaultuser”。


使用此语法,您可以动态配置特定于环境的值。


这适用于许多情况,例如可以在多种不同配置中使用的容器镜像。您可以使用默认值分发(或发布)您的应用程序“图像”,然后您可以使用具有实际值的特定环境变量运行您的“容器”。


查看完整回答
反对 回复 2023-02-21
  • 1 回答
  • 0 关注
  • 97 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信