如何在Cloud Run API中传递环境变量?
通过Cloud Run API传递环境变量
在Cloud Run控制台中可通过可视化界面添加环境变量,若要通过API完成该操作,可基于Cloud Run v2 API的服务管理接口实现,具体操作如下:
接口调用说明
需调用projects.locations.services.create(创建新服务)或projects.locations.services.patch(更新已有服务)接口,在请求体的template.spec.containers[].env字段中定义环境变量。
请求体示例(创建服务)
{ "template": { "spec": { "containers": [ { "image": "gcr.io/你的项目ID/目标镜像", "env": [ { "name": "APP_ENV", "value": "production" }, { "name": "DB_HOST", "value": "db.example.com" } ] } ] } } }
核心字段说明
name:环境变量名称,需符合常规环境变量命名规则(不可包含空格、特殊字符)value:环境变量的明文值
传递敏感保密变量
若需传递敏感信息,可通过valueFrom.secretKeyRef引用Secret Manager中的密钥,示例如下:
{ "name": "DB_PASSWORD", "valueFrom": { "secretKeyRef": { "secret": "数据库密码密钥", "key": "password" } } }
更新服务的注意事项
使用patch接口更新环境变量时,若需保留原有变量,必须将所有需保留的变量一同写入请求体,未包含的变量会被移除。
内容的提问来源于stack exchange,提问作者Ali
相关产品推荐
相关产品推荐

