尝试连接到服务器时,GCP、Django 问题连接被拒绝

GCP, Django problem connection refused when trying to connect to the server

我的 django 项目在 localhost 和 heroku 上也能正常运行,但是当我将它部署到 google 云平台时,出现此错误:

无法连接到服务器:连接被拒绝
服务器 运行 是否在本地并接受 Unix 域套接字“/cloudsql//.s.PGSQL.5432”上的连接?

settings.py 中的数据库连接如下所示:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'database_name',
        'USER': 'postgres',
        'PASSWORD': "password",
        # production
        'HOST': '/cloudsql/connection_name',
        'PORT': '5432',
    }

此外,我的app.yaml看起来像

runtime: python37

handlers:
  - url: /static
    static_dir: static/
  - url: /.*
    script: auto

env_variables:
  DJANGO_SETTINGS_MODULE: fes_app.settings

requirements.txt 看起来像这样加上

sqlparse==0.4.2
toml==0.10.2
uritemplate==4.1.1
urllib3==1.25.11
whitenoise==5.2.0
twilio==6.9.0

我试过使用 psycopg 的二进制版本,还给云中的服务帐户分配了一个角色 client sql。

**注意:**我使用的是 App Engine 标准环境

可能需要更多信息来帮助您解决问题,但是您是否遵循官方 Google 文档中的以下教程?这通常是我开始的方式,然后我从那里进行修改。

我会比较 Google 如何将 Django 应用程序部署到您自己的设置,看看缺少什么。例如,您的 requirements.txt 文件看起来不完整(除非您只粘贴了它的一部分)所以我会从这里开始。

https://cloud.google.com/python/django/appengine