使用Ubuntu服务器终端设置SECRET KEY env变量无GUI

时间:2015-12-22 02:09:53

标签: ruby-on-rails environment-variables ubuntu-14.04 ubuntu-server secret-key

我环顾四周,没有找到任何关于如何在没有gui的运行Ubuntu Server的服务器上设置SECRET KEY环境变量的好教程。你无法在终端中复制或粘贴,因此运行rake secret基本上是没用的。

我不确定您是否无法粘贴终端或者这与VMware控制台屏幕有关,因为我知道在使用VMware控制台时我无法将值粘贴到任何服务器中。

寻找有关设置这些SECRET env变量的一些指导

2 个答案:

答案 0 :(得分:1)

您可能希望在.profile文件中设置它。有关详细信息,请参阅持久性环境变量下的https://help.ubuntu.com/community/EnvironmentVariables

还有figaro gem(https://github.com/laserlemon/figaro),它允许您通过YML文件设置特定于应用程序的ENV变量。如果您需要在一台服务器上和一个用户下托管多个应用程序,这是一个好主意,但您应该将包含敏感数据的application.yml文件放入.gitignore文件中。

答案 1 :(得分:1)

在终端中键入以下命令

gedit .bashrc

在bashrc中进入底部

export SENDGRID_USER='root'

export SENDGRID_DATABASE_PASSWORD='123'

将其传递到app / config / database.yml文件

default: &default
  adapter: mysql2
  encoding: utf8
  pool: 5
  socket: /var/run/mysqld/mysqld.sock
  username: <%= ENV['SENDGRID_USER'] %>
  password: <%= ENV['SENDGRID_DATABASE_PASSWORD'] %>

然后

重新启动rails服务器 rails s