我正在开发cloud9(c9.io)上的Rails 4应用程序。当我在配置文件中放置SECRET="geheim"
时,它工作正常。我尝试使用
echo "export SECRET=geheim" >> ~/.profile
然后在配置文件中使用ENV['SECRET']
,但它不起作用。当我在控制台中键入printenv SECRET
时,它不返回任何内容,这意味着未设置变量。我怎样才能解决这个问题?感谢。
答案 0 :(得分:4)
只有在使用运行面板运行应用程序时,才能在cloud9上添加环境变量。在运行面板中,最右侧有一个ENV按钮,您可以在其中设置环境变量。
有关设置运行命令的一些文档:
https://docs.c9.io/v1.0/docs/run-an-application
不幸的是,如果你从终端运行你的应用程序,这不起作用,因为cloud9似乎不直接从终端支持环境变量。
答案 1 :(得分:0)
在linux终端:
% export <env-variable-name> = <env-variable-value>
例如,设置一个 AWS-S3 存储桶:
% export PHOTOS_BUCKET='s3://edx-photo-lab/photos/'
来源:https://docs.aws.amazon.com/cloud9/latest/user-guide/env-vars.html
上述方案存在Cloud9 EC2重启时变量清零的问题。
要保留变量,您必须将 export
语句添加到 ~/.bashrc
。您可以使用 vim 进行编辑:
% sudo vim ~/.bashrc