云sql代理:php_network_getaddresses:/cloudsql/****的getaddrinfo失败

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

嗨,我正在尝试使用云 sql 代理连接让 php artisan 使用我的脚本进行迁移。 sql 代理连接工作正常,但当它启动我的命令时,它失败并出现错误

---------- CONNECT CLOUDSQL ----------
cloud_sql_proxy is running.
Connections: ****:europe-west1:***-bdd.

---------- EXECUTE COMMAND ----------
/var/www/scripts-cloud/migrate.sh

   Illuminate\Database\QueryException

  SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo for /cloudsql/*** failed: Name or service not known (SQL: select * from information_schema.tables where table_schema = scorecard and table_name = migrations and table_type = 'BASE TABLE')

这是我的代码

  - name: "gcr.io/google-appengine/exec-wrapper"
    entrypoint: 'bash'
    args:
      - -c
      - |
        /buildstep/execute.sh \
        -i europe-west1-docker.pkg.dev/$PROJECT_ID/$$SERVICE_NAME/api \
        -e DB_CONNECTION=mysql \
        -e DB_SOCKET=$$DB_HOST \
        -e CLOUD_SQL_CONNECTION_NAME=$$PROJECT_ID:$$PROJECT_REGION:$$PROJECT_INSTANCE \
        -e DB_DATABASE=$$DB_DATABASE \
        -e DB_USERNAME=$$DB_USERNAME \
        -e DB_PASSWORD=$$DB_PASSWORD \
        -e EMAIL_SUPER_ADMIN=$$EMAIL_SUPER_ADMIN \
        -e PWD_SUPER_ADMIN=$$PWD_SUPER_ADMIN \
        -s $$PROJECT_ID:$$PROJECT_REGION:$$PROJECT_INSTANCE \
        /var/www/scripts-cloud/migrate.sh
    secretEnv: ['DB_PASSWORD', 'DB_DATABASE', 'DB_USERNAME', 'DB_HOST', 'PROJECT_ID', 'PROJECT_REGION', 'PROJECT_INSTANCE', 'SERVICE_NAME', 'EMAIL_SUPER_ADMIN', 'PWD_SUPER_ADMIN']

如果我使用命令云代理手动启动连接

./cloud-sql-proxy --port 3307 ****:europe-west1:***-bdd

我可以在本地连接并使用 bdd 并启动我想要的一切

我是不是忘记了什么?

谢谢

我重新验证所有代码,手动替换,本地启动

php google-cloud-platform cloud google-cloud-sql cloud-sql-proxy
1个回答
0
投票

将此作为社区维基共享以造福他人

正如@shinzo94所提到的

我的 .env 不包含 DB_SOCKET 值

© www.soinside.com 2019 - 2024. All rights reserved.