はじめに
Renderを使用して、RubyonRailsで開発したWEBサービスのデプロイをしています。

Cloud Application Hosting for Developers | Render
以下の記事を参考にデプロイを行いました。

【完全版】Rails Renderデプロイガイド - Qiita
その中でデータベースの作成して、WebSearviceの環境変数(Environment)のDATABASE_URLにInternal Database URLを設定したが、以下のエラーが出ました。
解決方法を備忘録として記載します。
rake aborted!
PG::ConnectionBad: could not translate host name "dpg-coev4t21hbls7392mfvg-a" to address: Name or service not known
原因
原因は単純でWebSearviceのRegionと、データベースのリージョンが異なることが原因でした。
Regionは以下で確認できます。
- WebSearviceは、「Setting > Region」
- データベースは、「Info > Region」
解決方法
インターフェースで操作した限り、作成済みデータベースのRegionを変更する方法が見つかりませんでした。
そのため、データベースを削除して作成しなおしました。
データベースの新規作成画面で、Regionを設定する

その後、WebSearviceに環境変数(Environment)のDATABASE_URLを設定しなおすと、WebSearviceの再デプロイが自動で走り、無事にデプロイに成功しました。
終わりに
以前にも同じ事象で詰まったので、こちらに記録として残しました。
Renderは無料プランだと以下の通りデータベースは90日で削除されてしまうので、運用はずっと難しいです。
バックエンドありきのWEBサービスだとどうしても料金が発生してしまうので、どこか別のサービスを検討してもいいかもしれません。

参考記事
Error: ActiveRecord::ConnectionNotEstablished: could not translate host name "dpg-ckm5engu1l6c73f2s23g-a" to address: Name or service not known

