Я пытаюсь настроить приложение Rails на экземпляре Amazon EC2 под управлением Ubuntu, используя nginx и Passenger.Я использую базу данных Mysql, размещенную на RDS - она не работает локально на экземпляре EC2.
Мой файл виртуального хоста nginx выглядит следующим образом:
server {
listen 80;
passenger_enabled on;
root /var/www/public;
client_max_body_size 10M;
}
Мой database.yml выглядит следующим образомthis:
default: &default
adapter: mysql2
encoding: utf8
reconnect: false
pool: 40
timeout: 5000
database: <%= ENV['RDS_DB_NAME'] %>
username: <%= ENV['RDS_USERNAME'] %>
password: <%= ENV['RDS_PASSWORD'] %>
host: <%= ENV['RDS_HOSTNAME'] %>
port: <%= ENV['RDS_PORT'] %>
production:
<<: *default
и все переменные среды правильно настроены для подключения к моему удаленному экземпляру RDS.Подключение через консоль rails работает как положено.
Однако, когда я пытаюсь запустить приложение, я получаю эти ошибки в /var/nginx/error.log:
[ E 2018-10-28 12:40:22.8485 14984/T6p age/Cor/App/Implementation.cpp:221 ]: Could not spawn process for application /var/www: The application encountered the following error: Access denied for user 'ubuntu'@'localhost' (using password: NO) (Mysql2::Error::ConnectionError)
Не знаюне понимаю, почему Passenger пытается подключиться как 'ubuntu' @ 'localhost', а не использует информацию из config / database.yml?Я что-то упустил?
Большое спасибо