2016-10-14 96 views
0

我有兩個項目在服務器上運行。我在ENV中存儲AWS_SECRET。如何針對不同的項目使用不同的env?

我將這些env設置在我的〜/ .bash_profile中。我如何確保一個項目獲得正確的密鑰?我可以只在項目範圍內設置env嗎?

謝謝。

回答

0

你可以做的事情是在運行時設置環境變量。

實施例:

$ AWS_SECRET="Secret1" run_server1 arg1 arg2 arg3 
$ AWS_SECRET="Secret2" run_server2 arg1 arg2 arg3 
0

Autoenv是專爲這個此確切目的:

pip install autoenv 
echo 'AWS_SECRET="Secret1"' > ./project1/.env 
echo 'AWS_SECRET="Secret2"' > ./project2/.env 
1

對於AWS CLI(aws)具體地,可以使用 「profiles」,其中可以選擇與--profile的論點。例如,在你的~/.aws/credentials

[default] 
aws_access_key_id=AKIAIOSFODNN7EXAMPLE 
aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY 

[user2] 
aws_access_key_id=AKIAI44QH8DHBEXAMPLE 
aws_secret_access_key=je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY 

然後使用aws --profile user2選擇非默認的配置文件作爲一次性的,或者設置環境變量AWS_DEFAULT_PROFILE=user2在你的shell,使其永久化。這可能比直接設置AWS_SECRET更容易,因爲配置文件名稱實際上是您可以記住的東西:)

除了憑據,配置文件還允許您切換其他設置,如region

+0

然而,這很好,除AWS之外還有其他密鑰 – moeseth

相關問題