无法使用node.js和Prisma从App Engine连接到Google Cloud SQL(postgres)

mzaanser  于 2023-06-22  发布在  Node.js
关注(0)|答案(1)|浏览(126)

在我的app.yaml中,我得到了以下内容:

DATABASE_URL: "postgresql://USER:PWD@localhost:5432/DATABASE?host=/cloudsql/CONNECTION_NAME"

与此应用程序关联的服务用户具有所需的权限:

但我一直得到错误:Can't reach database server at/cloudsql/CONNECTION_NAME`
数据库完全可以从白名单上的IP访问,所以问题出在这个配置的某个地方。
我做错了什么?

epggiuax

epggiuax1#

这不是一个确切的答案,但可能对其他人有帮助。
我已经使用这个Dockerfile从App Engine迁移到Cloud Run:

# Dockerfile

# base image
FROM node:18-alpine3.18

# create & set working directory
RUN mkdir -p /usr/src
WORKDIR /usr/src

# copy source files
COPY . /usr/src

COPY package*.json ./
COPY prisma ./prisma/

# install dependencies
RUN npm install

COPY . .

# start app
RUN npx prisma generate
RUN npm run build
EXPOSE 5000
CMD npm run start

在部署新修订版

时,不要忘记添加SQL连接
请注意app.ts中的这一行:server.listen({ port: 5000, host: '0.0.0.0' });,“host”参数是至关重要的,否则容器将无法启动。
希望它能帮助到某人。

相关问题