rails无法访问/ etc / environment中的环境变量

时间:2016-06-20 23:07:38

标签: ruby-on-rails ruby ruby-on-rails-4 ubuntu

我一直在尝试部署一个rails项目,它需要一些环境变量,所以我做了一些研究,结果发现添加它们的最佳位置是在/ etc / environment里面,我这样做然后来源文件。 我现在可以通过运行echo $ variablename获取/访问环境变量;但是rails应用程序仍然看不到这些环境变量?

2 个答案:

答案 0 :(得分:0)

所有登录上下文中的所有shell都不会自动获取

/etc/environment。要将设置导入rails环境,有几个选项。最简单的可能是修改(或创建).bashrc(假设rails用户的shell是bash,这是Ubuntu的默认shell)在用户rails的主目录中运行为并添加以下行:

source /etc/environment

如果您希望变量可供系统上的所有用户使用,您可以创建一个名为/etc/profile.d/environment.sh(或类似名称)的文件,并将上面的行添加到该文件中。

对于任一解决方案,请以rails用户身份再次登录并验证环境。

答案 1 :(得分:0)

您可能希望将此gem用于env变量: https://github.com/bkeepers/dotenv