无法使用rails从.profile访问可变环境



在rails应用程序中,我使用ansible导出了.profile中的数据库变量。变量可由命令CCD_ 2访问。但是,当我运行应用程序或通过ENV['NAME']使用rails c时,变量不存在。

有人知道rails为什么不从.profile加载变量吗?

~/.profile脚本只能由您的(可能兼容POSIX(shell读取。即便如此,也只有当它是已知的";登录";壳例如,来自bash手册页:

当作为交互式登录shell或带有--login选项的非交互式shell调用时,它首先尝试按顺序读取和执行/etc/profile和~/.profile中的命令。

如果您从交互式shell提示符运行rails应用程序,它应该可以访问您在~/.profile中设置的env vars。如果您以其他方式(例如,从窗口管理器(启动rails应用程序,则需要找到其他方式来设置它继承的env var。

最新更新