Rails アプリが Postgresql に接続できません。Postgres は、ログインしているユーザーが Ubuntu (12.10) にログインしているユーザーと同じであると想定しているためだと思われます。
deployer@xxx:~$ whoami
deployer
deployer@xxx:~$ psql
psql: FATAL: role "deployer" does not exist
私のセットアップは次のシーケンスに従いました。
a) root@server として、新しいグループadmin
と新しいユーザーを作成しましたdeployer
groupadd admin
adduser deployer --ingroup admin
ssh-copy-id root@xxx.xxx.xx.xx
b) deployer としてログインし、Postgres をインストールしました
sudo add-apt-repository ppa:pitti/postgresql
sudo apt-get update
sudo apt-get install postgresql libpq-dev
c) リモート サーバーで psql にログインし、Rails アプリと一致する新しいユーザーを作成しました。
sudo -u postgres psql
create user 'my_app' with password 'secret';
create database my_app_production owner my_app;
展開には、deployer
ユーザーを使用しています。このエラーは、展開中に発生し続けます。
FATAL: password authentication failed for user "my_app"
ここに私のdatabase.ymlがあります
production:
adapter: postgresql
encoding: utf8
database: my_app_production
pool: 5
host: localhost
username: my_app
password: secret
\du
psql で実行すると、次のようになります。
Role name | Attributes | Member of
------------+------------------------------------------------+-----------
postgres | Superuser, Create role, Create DB, Replication | {}
my_app | | {}