【Drizzle】Invalid URLエラーを解決する
こんにちは、フリーランスエンジニアの太田雅昭です。
DrizzleでInvalid URL
下記のようなurlを使用すると、エラーになりました。
postgresql://user:pass@project:region:instance/db
これはCloud SQLの接続名を使用しています。Drizzleはこれをパースできずに、Invalid URLエラーを投げてしまいます。
解決策
下記のようにすることで、解決しました。
postgresql://user:pass@localhost/db?host=/cloudsql/project:region:instance
なおlocalhostとしているのは、Cloud Runの設定でCloud SQL接続を入れているためです。詳細はまだ理解しきれていませんが、localhost経由で接続できるようになるようです。
設定は下記のようになっています。
- Cloud SQLはPublic IP
- Cloud RunでCloud SQL接続を有効化
- Cloud Runでネットワークアクセスを設定する(トラフィック ルーティング:プライベート IP へのリクエストのみを VPC にルーティングする)
下記サイトを参考にさせていただきました。