嗨,我正在尝试使用云 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 并启动我想要的一切
我是不是忘记了什么?
谢谢
我重新验证所有代码,手动替换,本地启动
将此作为社区维基共享以造福他人
正如@shinzo94所提到的
我的 .env 不包含 DB_SOCKET 值