如何修复在 Google Cloud Run 上创建 Django 后端服务时出现的端口错误?

问题描述 投票:0回答:1

我有一个 Django REST 后端映像,我尝试在 Google Cloud Run 上为其创建服务。在 Google Cloud Run 中,我将端口设置为 6000,当我尝试创建它时,它显示了以下错误:

运行时警告:检查数据库连接“默认”执行的一致迁移历史记录时出错:(2002,“无法连接到‘35.226.227.51’上的 MySQL 服务器(115)”)

用户提供的容器无法启动并侦听 PORT=6000 环境变量提供的端口。

默认 STARTUP TCP 探测在端口 6000 上的容器“后端”连续 1 次失败。实例未启动。

我的后端 Dockerfile 的最后 2 层是:

EXPOSE 6000

CMD python manage.py makemigrations && python manage.py migrate && python manage.py runserver 0.0.0.0:6000

我不知道如何解决这个问题,因为这是我第一次尝试部署网站。

对于数据库错误,我已检查数据库凭据并配置我的 Django settings.py 以使用所示的公共 IP 地址连接到我的 Google Cloud SQL、MySQL 实例,并确保配置正确,但不太确定为什么会这样显示该错误。

任何帮助将不胜感激!

mysql django google-cloud-platform dockerfile port
1个回答
0
投票

问题现已解决,这就是我所做的:

为了解决数据库连接错误,我将我的settings.py配置如下:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'HOST': '/cloudsql/<instance connection name>',
        'USER': 'root',
        'PASSWORD': '<root password>',
        'NAME': '<database name>',
    }
}

为了解决端口错误,我将端口从 6000 更改为 9000(我发现有些浏览器专门阻止端口 6000),并更改了 Dockerfile 的最后 2 行:

EXPOSE 6000

CMD python manage.py makemigrations && python manage.py migrate && python manage.py runserver 0.0.0.0:6000

对此:

CMD python manage.py makemigrations && python manage.py migrate && python manage.py runserver 0.0.0.0:9000
© www.soinside.com 2019 - 2024. All rights reserved.