当我运行宙斯:如何通过环境变量宙斯
MY_VAR=MY_VALUE zeus start
环境保持与该变量,比方说,我想与MY_VAR=MAY_VALUE_2
运行Rails服务器我曾尝试:
MY_VAR=MAY_VALUE_2 zeus s
但它不起作用。如果这很重要,我正在使用oh-my-zsh。
我该怎么做?
当我运行宙斯:如何通过环境变量宙斯
MY_VAR=MY_VALUE zeus start
环境保持与该变量,比方说,我想与MY_VAR=MAY_VALUE_2
运行Rails服务器我曾尝试:
MY_VAR=MAY_VALUE_2 zeus s
但它不起作用。如果这很重要,我正在使用oh-my-zsh。
我该怎么做?
不知道你是否仍然需要帮助,但是如果你想能够将环境变量存储在文件中,可以使用zeus init
生成的custom_plan.rb
。以下是我的文件的副本。我使用的是Omniauth,需要我的密钥才能轻松更改。您可以通过重载server
方法来添加仅服务器变量,只需知道您的初始化程序将在服务器命令之前运行。
require 'zeus/rails'
class CustomPlan < Zeus::Rails
def boot
# Omniauth Keys
# GOOGLE+
ENV['GPLUS_KEY'] = 'xxx'
ENV['GPLUS_SECRET'] = 'xxx'
# FACEBOOK
ENV['FACEBOOK_KEY'] = 'xxx'
ENV['FACEBOOK_SECRET'] = 'xxx'
super # Finish boot
end
end
Zeus.plan = CustomPlan.new
使用环境变量而不是设置文件的一个要点是,意外地提交诸如GPLUS_SECRET和FACEBOOK_SECRET之类的东西并不容易。使用这样的文件会带来这个问题。我希望有更好的选择。 – Gerry 2016-03-20 06:08:56
通过它在宙斯开始
SOME_ENV_VAR=test zeus start
我不知道你可以 - 据我了解派生的子总是要继承父进程的环境,即宙斯服务器。 – 2013-05-06 20:50:16
您可能可以使用zeus.json来设置这些。 – 2013-05-06 22:39:28