gpt4 book ai didi

mysql - Strapi + Cloud SQL for MySQL on Google App Engine - 服务器无法正常启动错误 : getaddrinfo EAI_AGAIN

转载 作者:行者123 更新时间:2023-12-04 13:09:17 25 4
gpt4 key购买 nike

我正在尝试将我的 Strapi 应用程序启动到 Google App Engine,我确实部署成功,但我一直在日志中收到此错误:

Server wasn't able to start properlyError: getaddrinfo EAI_AGAIN /cloudsql/connectionName


错误日志:
error logs
我按照部署说明进行操作,但可能缺少某些内容,就像我的应用程序无法与 Cloud SQL for MySQL 数据库建立连接一样。
这是我的 .yaml 文件:

runtime: nodejs12

instance_class: F2

env_variables:
HOST: '0.0.0.0'
NODE_ENV: 'production'
DATABASE_NAME: 'test'
DATABASE_USERNAME: '***'
DATABASE_PASSWORD: '***'
INSTANCE_CONNECTION_NAME: '***'

beta_settings:
cloud_sql_instances: '***'



module.exports = ({ env }) => ({
defaultConnection: 'default',
connections: {
default: {
connector: 'bookshelf',
settings: {
client: 'mysql',
host: `/cloudsql/${env('INSTANCE_CONNECTION_NAME')}`,
database: env('DATABASE_NAME'),
username: env('DATABASE_USERNAME'),
password: env('DATABASE_PASSWORD'),
},
},
},
});

如果有人知道这一点并且可以帮助我,我将不胜感激。

最佳答案

官方审核后docs和 GitHub issue ,事实证明,在 Cloud SQL 上通过 Unix Socket 连接时正常工作的是更改 hostsocketPath ,与当前所写的内容相反,即 socket (不知道为什么没有)。我测试过,它适用于 v3.6.1。
遵循他们的部署指南后,在您的项目上安装 mysql 驱动程序:

yarn add mysql
然后,更改 hostsocketPath :

module.exports = ({ env }) => ({
defaultConnection: 'default',
connections: {
default: {
connector: 'bookshelf',
settings: {
client: 'mysql',
socketPath: `/cloudsql/${env('INSTANCE_CONNECTION_NAME')}`,
database: env('DATABASE_NAME'),
username: env('DATABASE_USERNAME'),
password: env('DATABASE_PASSWORD'),
},
},
},
});

然后要管理您的项目,请转到位于 GAE URL 的/admin 的管理面板。

关于mysql - Strapi + Cloud SQL for MySQL on Google App Engine - 服务器无法正常启动错误 : getaddrinfo EAI_AGAIN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67393076/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com