Dokku
経由でアプリケーションをVPSにデプロイしたいと思います。
状物質(GitHubのでone)で一緒にdokku-postgres
documentationと相対的、希少なインターネットのドキュメントを置く、私が、任意の他のソースを見つけることができなかったのでurl: <%= ENV['DATABASE_URL'] %>
productionのためにdatabase.ymlを設定する方法
変数URL環境を使用するdatabase.yml
を設定するために必要と思われますどのようにdatabase.yml
を設定する必要があるのでしょうか。Dokkuで作成されたpostgresサービスにRailsがどのように接続するのでしょうか。
たとえば、変数と変数DATABASE_URL
をリンクする必要がありますが、これは私のRailsアプリケーションとPostgresサービスとの間の接続を確立するのに十分でしょうか、それでもユーザー名とパスワードを使用する必要がありますか?後者の場合、どのユーザー名とパスワードを使用する予定ですか?
以下は現在私のdatabase.yml
の様子です。私は、アプリケーションを作成したとき、それは(離れて生産のための高いプールサイズから)であるとして
default: &default
adapter: postgresql
encoding: unicode
pool: 5
username: asarluhi
development:
<<: *default
database: fireworks_app_development
test:
<<: *default
database: fireworks_app_test
production:
<<: *default
database: fireworks_app_production
pool: 25
username: fireworks_app
password: <%= ENV['FIREWORKS_APP_DATABASE_PASSWORD'] %>
このファイルが作成されました。 production
セクションを編集するにはどうすればよいですか?
dokku、Postgresのマニュアルは、次のいない(と他に何も)デフォルトでリンクされたアプリケーションに設定されると述べている:ロリポップpostgresのサービス例の代わりに
DATABASE_URL=postgres://postgres:[email protected]:5432/lolipop
、私は一致するfireworks_app_production
を使用しますdatabase.yml
内のデータベースの名前がDATABASE_URL
変数にurl
を指した後、まだ必要ユーザ名とパスワードていますか?私は何かを追加したり削除したりする予定ですか?
'database.yml'に入力する設定は、ENV [" DATABASE_URL "]のオプションとマージされます。 ENVの設定が優先されます。そう、あなたの 'プール'オプションが使用されます。 http://guides.rubyonrails.org/configuring.html#configuring-a-database – max
私が 'url:<%= ENV ['DATABASE_URL']%>'を ' database.yml'?リンクしたドキュメントが記載されているので、これがベストプラクティスです。 – Asarluhi
'database.yml'に' url:<%= ENV ['DATABASE_URL']%> 'を明示的に追加する必要はありませんし、データベースコネクタがデフォルトでENV ['DATABASE_URL']'を使用しているので、その例は、データベースの資格情報をチェックインするのではなく、実稼働環境でENV varを使用するというコンセプト/ベストプラクティスを示す単なる例です。 – max