Cloud SQL Proxy从1.11升级到2.6.0遇文件不存在错误求助
解决Cloud SQL Proxy 2.6.0容器启动路径错误问题
问题核心
Cloud SQL Proxy从1.x(如1.11)升级到2.x(如2.6.0)后,镜像内的二进制文件路径和启动参数格式发生了关键变更:
- 1.x版本的二进制路径为
/cloud_sql_proxy - 2.x版本的二进制路径已改为
/usr/local/bin/cloud-sql-proxy - 启动参数从传统的flag格式(如
-instances)改为子命令+参数的格式(如connect子命令)
你遇到的stat "/cloud_sql_proxy": no such file or directory错误,本质是启动命令仍在调用旧路径的二进制文件。
解决步骤
1. 修正二进制文件路径
将容器启动命令中的/cloud_sql_proxy替换为/usr/local/bin/cloud-sql-proxy。
2. 调整启动参数适配2.x版本
原1.x的典型启动参数示例:
command: ["/cloud_sql_proxy"] args: ["-instances=PROJECT_ID:REGION:INSTANCE_NAME=tcp:5432", "-credential_file=/path/to/service-account.json"]
改为2.x的格式:
command: ["/usr/local/bin/cloud-sql-proxy"] args: ["connect", "PROJECT_ID:REGION:INSTANCE_NAME", "--port", "5432", "--credentials-file", "/path/to/service-account.json"]
3. 验证Helm Chart配置
检查你的Helm values.yaml或模板文件中,容器的command和args字段是否完全更新:
- 确保
command指向正确的2.x二进制路径 - 确保
args使用2.x的子命令格式(connect是核心子命令,替代原1.x的-instances参数)
额外检查
如果你的配置依赖镜像默认entrypoint,无需指定command,直接通过args传递2.x参数即可:
args: ["connect", "PROJECT_ID:REGION:INSTANCE_NAME", "--port", "5432", "--credentials-file", "/path/to/service-account.json"]
内容的提问来源于stack exchange,提问作者Shrivardhan
相关产品推荐
相关产品推荐

