當我運行宙斯:如何通過環境變量宙斯
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