5

現在playframework 2.0.2を使用しており、application.confでdb接続情報を設定しています

db.default.url="jdbc:mysql://localhost:3306/test"
db.default.driver=com.mysql.jdbc.Driver
db.default.user=test
db.default.pass=test

しかし、私が知りたいのは、「play clean update dist」を使用してアプリケーションを本番環境に配置し、application.conf がないサイトにインストールしたときです。これは、コードを配布する前にデータベース接続を変更する必要があることを意味しますか? 配布後に設定ファイルの db 接続を変更する方法はありますか?

4

2 に答える 2

8

構成ファイルを使用するplay distと、zip 内の jar ファイルにパッケージ化されます。conf/prod.conf次のようなファイルを作成できます。

include "application.conf"

db.default.url="jdbc:mysql://foo.com:3306/mydb"
db.default.driver=com.mysql.jdbc.Driver
db.default.user=foo
db.default.pass=bar

次に、Play アプリを起動するときに、次のコマンドprod.confを実行してファイルを使用するように指示します。

start -Dconfig.resource=prod.conf
于 2012-11-02T02:46:05.510 に答える
5

構成ファイルのパッケージ化をまったく回避するには、運用サーバーで prod.conf を作成し、配布ファイルを解凍するフォルダー以外のフォルダーに保存することをお勧めします。次に、以下のような起動スクリプト (または、アプリをサービスとして起動するより洗練された起動スクリプト) を作成します。構成ファイルを dist パッケージとは別にしておくことで、新しい変更をプッシュするときに誤って上書きしてしまうリスクを回避できます。

#!/bin/bash
sh start -Dconfig.file=/path/to/prod.conf &
于 2012-11-05T02:27:15.630 に答える