Django-应用程序引擎-云SQL(PostgreSQL)-操作错误:无法连接到服务器:连接被拒绝



我已经将Django部署到连接到云SQL(PostgreSQL(实例的应用程序引擎中。我不断得到以下错误:

OperationalError: could not connect to server: Connection timed out 

OperationalError: could not connect to server: Connection refused

app.yaml

# [START django_app]
runtime: python37
service: prestige-worldwide
handlers:
# This configures Google App Engine to serve the files in the app's static
# directory.
- url: /static
static_dir: static/
# This handler routes all requests not caught above to your main app. It is
# required when static routes are defined, but can be omitted (along with
# the entire handlers section) when there are no static files defined.
- url: /.*
script: auto
# [END django_app]

settings.py-数据库配置

ALLOWED_HOSTS = ['app-engine url','127.0.0.1']
DATABASES = {
'default': {'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'postgres',
'USER': 'postgres',
'PASSWORD': 'admin',
'HOST': 'instance public ip address',
'PORT': 'ip address host',}}

它在本地与Cloud SQL配合使用很好,但在部署到App Engine时不起作用。

这样配置DB解决了问题

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'postgres',
'USER': 'postgres',
'PASSWORD': 'admin',
}
}
DATABASES['default']['HOST'] = '/cloudsql/instance-name'
if os.getenv('GAE_INSTANCE'):
pass
else:
DATABASES['default']['HOST'] = 'instance public ip address'

相关内容

  • 没有找到相关文章

最新更新