Развертывание приложения Rails 5 в EC2-RDS Ошибка подключения экземпляра БД - PullRequest
0 голосов
/ 02 мая 2018

Я создал экземпляр БД и прошел процесс конфигурации экземпляра AWS в соответствии с документацией. успешно создал экземпляр БД. также изменил параметры соединения в database.yml соответственно. Я выполнил следующие команды на сервере ngnix, установленном в Ubuntu 16.04 на aws, а также несколько раз перезагрузил экземпляр db.

RAILS_ENV=production rake db:create

и дБ успешно созданы а затем побежал

RAILS_ENV=production rake db:migrate

и база данных успешно перенесена. затем выполнил команду sudo service nginx restart после всего процесса когда я захожу в мое приложение, оно говорит

PG::ConnectionBad
could not connect to server: Connection refused Is the server running on host "localhost" (127.0.0.1) and accepting TCP/IP
connections on port 5432?

вот мой database.yml

development:
  host: localhost
  database: ups_developement_db
  adapter: postgresql
  encoding: unicode
  port: 5432
  username: postgres
  password: postgres
production:
  host: dbcustom.cjocvmnblsa4.us-east-2.rds.amazonaws.com
  database: ups_db
  adapter: postgresql
  encoding: unicode
  port: 5432
  username: dbmasteruser
  password: dbmasterPassword

Я открыт для предоставления любой необходимой информации. Большое спасибо за ваше время и решение заранее

1 Ответ

0 голосов
/ 02 мая 2018

Почти наверняка вы неправильно настроили группы безопасности на экземпляре RDS.

Войдите в свой EC2 и введите команду

telnet <rds hostname> 5432

Вы должны увидеть что-то вроде

Trying 10.1.1.2...
Connected to 10.1.1.2.
Escape character is '^]'.

, что означает, что TCP может передаваться между вашим EC2 и вашим RDS.

Если нет, вам нужно разрешить вашему EC2 подключаться к вашему экземпляру RDS, добавив правильную конфигурацию группы безопасности.

...