私は GCloud を使用しています。kubernate クラスターとクラウド SQL インスタンスがあります。
データベースを使用する単純な node.js アプリがあります。デプロイするとgcloud app deploy
、データベースにアクセスできます。ただし、dockerimage をビルドして公開すると、データベースに到達できません。
- 次の Docker アプリケーションを公開します: https://cloud.google.com/kubernetes-engine/docs/tutorials/hello-app
- Cloud SQL ではプライベート IP が有効になっていません。Cloud SQL プロキシを使用して接続しています
- app.yaml で指定します
base_settings:cloud_sql_instances
。socketPath
mysql 接続の構成で同じ値を使用します。 Docker ログのエラーは次のとおりです。
(node:1) UnhandledPromiseRejectionWarning: エラー: connect ENOENT /cloudsql/x-alcove-224309:europe-west1:learning at PipeConnectWrap.afterConnect [as oncomplete] (net.js:1097:14)
Docker化されたノードアプリケーションからクラウドSQLに接続する方法を教えてください。