我在Ruust中构建了一个API,并通过Google Cloud Run部署它.在我的API中,我访问存储为环境变量的远程数据库的URI.

当我在本地计算机上运行该程序时,可以使用env!("MONGODB_URI_2")访问环境变量.

当我使用标志--set-env-vars "MONGODB_URI_2", "theurigoeshere"将程序部署到gCloud时,相同的环境宏找不到变量并死机.

Edit:个 在发这篇文章之前,我试着go 掉键上的下划线,并将文本全部小写,但没有帮助.

推荐答案

看起来--set-env-vars期望=作为键和值之间的分隔符,而,则分隔多个变量:

gcloud run deploy --set-env-vars MONGODB_URI_2=theurigoeshere

还要注意,env!宏为您提供了编译时环境变量,因此,如果您需要运行时环境变量,请使用std::env::var.看起来编译时环境变量可以在这里工作,但这是一个常见的错误,所以要记住这一点很重要.

Rust相关问答推荐

如何处理动态 struct 实例化?

如果成员都实现特征,是否在多态集合上实现部分重叠的特征?

将一个泛型类型转换为另一个泛型类型

确保参数是编译时定义的字符串文字

我可以解构self 参数吗?

try 从标准输入获取用户名和密码并删除 \r\n

如何正确使用git2::Remote::push?

trait 对象指针的生命周期

(let b = MyBox(5 as *const u8); &b; ) 和 (let b = &MyBox(5 as *const u8); ) 之间有什么区别

从嵌入式 Rust 中的某个时刻开始经过的时间

具有在宏扩展中指定的生命周期的枚举变体数据类型

LinkedList::drain_filter::drop 中 DropGuard 的作用是什么?

`use std::error::Error` 声明中断编译

是否有适当的方法在参考 1D 中转换 2D 数组

如何将切片推入数组?

TcpStream::connect - 匹配武器具有不兼容的类型

如果返回类型是通用的,我可以返回 &str 输入的一部分吗?

A 有一个函数,它在 Option<> 类型中时无法编译,但在 Option<> 类型之外会自行编译.为什么?

将 reqwest bytes_stream 复制到 tokio 文件中

缓存自引用函数导致 Rust