2016-12-23 57 views
0

我有一個部署過程,需要在docker構建階段訪問敏感變量。獲取circleci環境變量以顯示在docker機器中

嗨。我想在circleci的碼頭構建階段上傳我的縮小的javascript。看起來很簡單,但我無法在構建階段顯示環境變量。我不想將我的AWS密鑰放入Git中。我的第一個問題是我無法得到任何環境變量,即使硬編碼,在構建系統上都顯示出來,我的第二個問題是我不想像下面那樣對它們進行硬編碼(foo,baz)。

machine: 
    services: 
    - docker 
    environment: 
    foo: bar 
    baz: 123 
    AWSKEY: $awskey 
    AWSSECRET: $awssecret 

在閱讀文檔,它看起來像我想這樣做更多這樣的:

machine: 
    services: 
    - docker 

dependencies: 
    cache_directories: 
    - elasticsearch-2.4.0 
    override: 
    - docker info 
    - docker build --rm=false -t myapp/im . : 
     environment: 
      foo: bar 
      baz: 123 
      AWSKEY: $awskey 
      AWSSECRET: $awssecret 

是的,這看起來有前途!

enter image description here

然而在Dockerfile我可以

RUN printenv

,我看不到任何這些ENV的瓦爾。

enter image description here

SO,可能有人告訴我,我做錯了嗎?我的想法是錯誤的嗎?在循環ci中的環境變量面板的構建階段,是否嘗試使用AWS creds? (如下圖所示)

enter image description here

回答