Vapor 3 documentation除了“向服务注册DatabasesConfig
结构”之外,对数据库配置没有多说。
教程(例如this one)建议您像这样在App/configure.swift
文件中实现配置:
let mysqlConfig = MySQLDatabaseConfig(
hostname: "127.0.0.1",
port: 3306,
username: "root",
password: "root",
database: "mycooldb"
)
services.register(mysqlConfig)
但是git正在跟踪我的configure.swift
文件,并且我不想提交用户名和密码。
如何提供用于处理数据库连接的外部配置文件?
似乎Vapor的早期版本使用JSON配置文件。此功能是否已完全消失?我在当前文档中找不到任何提及。
答案 0 :(得分:4)
最流行的方法是使用环境变量。您可以在Xcode方案或终端中设置它们:
export DB_PASSWORD=root
然后在您的配置中获取它:
guard let password = Environment.get("DB_PASSWORD") else {
throw Abort(.internalServerError)
}
答案 1 :(得分:3)
您可以添加一个环境变量,然后像这样加载它:
Environment.get("MY_VAR")