【发布时间】:2014-11-05 20:31:49
【问题描述】:
我是 Dancer 的新手,但我正在尝试将其配置为在 Docker 容器中工作。因此,我需要从环境中获取我的数据库设置。
就我而言,我有来自 Docker 的 DB_PORT_3306_TCP_ADDR 和 DB_PORT_3306_TCP_PORT。不幸的是,Dancer::Plugin::Database 模块在我可以更改数据库以使用这些变量之前出错。
use Dancer ':syntax';
use Dancer::Plugin::Database;
if ($ENV{DB_PORT_3306_TCP}) {## Connected via docker.
database->({
driver => 'mysql',
username => 'username',
password => 'password',
host => $ENV{DB_PORT_3306_TCP_ADDR},
port => $ENV{DB_PORT_3306_TCP_PORT},
database => $ENV{DB_ENV_MYSQL_DATABASE},
});
}
所以问题是,有没有一种从环境变量而不是通过静态 YAML 配置 Dancer 的好方法?
【问题讨论】: