【发布时间】:2015-06-03 10:30:15
【问题描述】:
我想使用 Openshift 来托管我的 Grails 应用程序,并在 Openshift 上设置 MySQL 数据库。
Openshift 仅提供数据库的登录名和密码,但连接字符串采用环境变量OPENSHIFT_MYSQL_DB_HOST:OPENSHIFT_MYSQL_DB_PORT 的形式,我看不到我的数据库的这个变量的实际值是什么。现在我需要设置我的 YML 配置来访问数据库,但我需要以某种方式从 YML 访问环境变量 OPENSHIFT_MYSQL*。
我该怎么做?
【问题讨论】:
-
您可以尝试在 gsp 页面 System.getenv('OPENSHIFT_POSTGRESQL_DB_USERNAME') 中使用以下代码访问
-
@AnantKolvankar 它不是 gsp 页面。我需要访问 YML 文件。请阅读一个问题。
-
您想从您的 Openshift 应用程序中读取数据库配置吗?
-
你可以设置你的数据源
production { dataSource { String host = System.getenv('OPENSHIFT_MYSQL_DB_HOST') String port = System.getenv('OPENSHIFT_MYSQL_DB_PORT') String dbName = System.getenv('OPENSHIFT_APP_NAME') url = "jdbc:mysql://$host:$port/$dbName" username = System.getenv('OPENSHIFT_MYSQL_DB_USERNAME') password = System.getenv('OPENSHIFT_MYSQL_DB_PASSWORD') } } -
不,我有 YML 格式的配置,没有 grails 代码。我想在我的 YML 配置中访问环境变量。